• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Java BukkitObjectInputStream类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.bukkit.util.io.BukkitObjectInputStream的典型用法代码示例。如果您正苦于以下问题:Java BukkitObjectInputStream类的具体用法?Java BukkitObjectInputStream怎么用?Java BukkitObjectInputStream使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



BukkitObjectInputStream类属于org.bukkit.util.io包,在下文中一共展示了BukkitObjectInputStream类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: fromBase64

import org.bukkit.util.io.BukkitObjectInputStream; //导入依赖的package包/类
/**
 * 
 * A method to get an {@link Inventory} from an encoded, Base64, string.
 * 
 * <p />
 * 
 * Special thanks to Comphenix in the Bukkit forums or also known
 * as aadnk on GitHub.
 * 
 * <a href="https://gist.github.com/aadnk/8138186">Original Source</a>
 * 
 * @param data Base64 string of data containing an inventory.
 * @return Inventory created from the Base64 string.
 * @throws IOException
 */
public static Inventory fromBase64(String data) throws IOException {
    try {
        ByteArrayInputStream inputStream = new ByteArrayInputStream(Base64Coder.decodeLines(data));
        BukkitObjectInputStream dataInput = new BukkitObjectInputStream(inputStream);
        Inventory inventory = Bukkit.getServer().createInventory(null, dataInput.readInt(),"Vault");
        
        for (int i = 0; i < inventory.getSize(); i++) {
            inventory.setItem(i, (ItemStack) dataInput.readObject());
        }
        
        dataInput.close();
        return inventory;
    } catch (ClassNotFoundException e) {
        throw new IOException("Unable to decode class type.", e);
    }
}
 
开发者ID:untocodes,项目名称:Vaults,代码行数:32,代码来源:Invtobase.java


示例2: itemStackArrayFromBase64

import org.bukkit.util.io.BukkitObjectInputStream; //导入依赖的package包/类
/**
     * Gets an array of ItemStacks from Base64 string.
     * 
     * <p />
     * 
     * Base off of {@link #fromBase64(String)}.
     * 
     * @param data Base64 string to convert to ItemStack array.
     * @return ItemStack array created from the Base64 string.
     * @throws IOException
     */
    public static ItemStack[] itemStackArrayFromBase64(String data) throws IOException {
    	try {
            ByteArrayInputStream inputStream = new ByteArrayInputStream(Base64Coder.decodeLines(data));
            BukkitObjectInputStream dataInput = new BukkitObjectInputStream(inputStream);
            ItemStack[] items = new ItemStack[dataInput.readInt()];
    
            for (int i = 0; i < items.length; i++) {
            	items[i] = (ItemStack) dataInput.readObject();
            }
            
            dataInput.close();
            return items;
        } catch (ClassNotFoundException e) {
            throw new IOException("Unable to decode class type.", e);
        }
}
 
开发者ID:untocodes,项目名称:Vaults,代码行数:28,代码来源:Invtobase.java


示例3: itemStackArrayFromBase64

import org.bukkit.util.io.BukkitObjectInputStream; //导入依赖的package包/类
public static ItemStack[] itemStackArrayFromBase64(String data) throws IOException {
   	try {
           ByteArrayInputStream inputStream = new ByteArrayInputStream(Base64Coder.decodeLines(data));
           BukkitObjectInputStream dataInput = new BukkitObjectInputStream(inputStream);
           ItemStack[] items = new ItemStack[dataInput.readInt()];
   
           for (int i = 0; i < items.length; i++) {
           	items[i] = (ItemStack) dataInput.readObject();
           }
           
           dataInput.close();
           return items;
       } catch (ClassNotFoundException e) {
           throw new IOException("Unable to decode class type.", e);
       }
}
 
开发者ID:benfah,项目名称:Bags,代码行数:17,代码来源:InventorySerializer.java


示例4: itemStackArrayFromBase64

import org.bukkit.util.io.BukkitObjectInputStream; //导入依赖的package包/类
public static ItemStack[] itemStackArrayFromBase64(String data) throws IOException {
	try {
		ByteArrayInputStream inputStream = new ByteArrayInputStream(Base64Coder.decodeLines(data));
		BukkitObjectInputStream dataInput = new BukkitObjectInputStream(inputStream);
		ItemStack[] items = new ItemStack[dataInput.readInt()];

		// Read the serialized inventory
		for (int i = 0; i < items.length; i++) {
			items[i] = (ItemStack) dataInput.readObject();
		}

		dataInput.close();
		return items;
	} catch (ClassNotFoundException e) {
		throw new IOException("Unable to decode class type.", e);
	}
}
 
开发者ID:bobmandude9889,项目名称:iZenith-PVP,代码行数:18,代码来源:Util.java


示例5: deserialize

import org.bukkit.util.io.BukkitObjectInputStream; //导入依赖的package包/类
/**
 * Deserialize a serialized byte array to an ItemStack array.
 *
 * @param data The data that should get deserialized.
 * @return The deserialized ItemStack array. null if deserialization failed.
 */
@Override
public ItemStack[] deserialize(byte[] data)
{
	if(data != null)
	{
		try(BukkitObjectInputStream bukkitObjectInputStream = new BukkitObjectInputStream(new ByteArrayInputStream(data)))
		{
			return (ItemStack[]) bukkitObjectInputStream.readObject();
		}
		catch(Exception e)
		{
			e.printStackTrace();
		}
	}
	return null;
}
 
开发者ID:GeorgH93,项目名称:Bukkit_Bungee_PluginLib,代码行数:23,代码来源:BukkitItemStackSerializer.java


示例6: deserializeItem

import org.bukkit.util.io.BukkitObjectInputStream; //导入依赖的package包/类
/**
 * Get an ItemStack from a JsonObject.
 *
 * @param data The Json to read.
 * @param format The data format being used. Refer to {@link PlayerSerializer#serialize(PWIPlayer)}.
 * @return The deserialized item stack.
 */
public ItemStack deserializeItem(JsonObject data, int format) {
    switch (format) {
        case 0:
            return getItem(data);
        case 1:
        case 2:
            try (ByteArrayInputStream inputStream = new ByteArrayInputStream(Base64Coder.decodeLines(data.get("item").getAsString()));
                 BukkitObjectInputStream dataInput = new BukkitObjectInputStream(inputStream)) {
                return (ItemStack) dataInput.readObject();
            } catch (IOException | ClassNotFoundException ex) {
                ConsoleLogger.severe("Unable to deserialize an item:", ex);
                return new ItemStack(Material.AIR);
            }
        default:
            throw new IllegalArgumentException("Unknown data format '" + format + "'");
    }
}
 
开发者ID:Gnat008,项目名称:PerWorldInventory,代码行数:25,代码来源:ItemSerializer.java


示例7: loadEnderchest

import org.bukkit.util.io.BukkitObjectInputStream; //导入依赖的package包/类
private void loadEnderchest(Inventory inv) {
    inv.clear();
    if(!this.database.contains(this.key + ".enderchest")) {
        return;
    }

    Map<String, Object> enderchest = null;
    try {
        BukkitObjectInputStream in = new BukkitObjectInputStream(new ByteArrayInputStream(this.database.getBytes(this.key + ".enderchest")));
        enderchest = (Map<String, Object>) in.readObject();
    } catch(Exception e) {
        this.module.getLogger().log(Level.SEVERE, "Failed to load enderchest.", e);
        return;
    }

    for(int slot = 0; slot < inv.getSize(); slot++) {
        if(enderchest.containsKey(String.valueOf(slot))) {
            inv.setItem(slot, ItemStack.deserialize((Map<String, Object>) enderchest.get(String.valueOf(slot))));
        } else {
            inv.setItem(slot, null);
        }
    }
}
 
开发者ID:Steveice10,项目名称:Peacecraft,代码行数:24,代码来源:WorldPlayerData.java


示例8: fromBase64

import org.bukkit.util.io.BukkitObjectInputStream; //导入依赖的package包/类
public static Inventory fromBase64(String data) throws IOException {
	try {
		ByteArrayInputStream inputStream = new ByteArrayInputStream(Base64Coder.decodeLines(data));
		BukkitObjectInputStream dataInput = new BukkitObjectInputStream(inputStream);
		Inventory inventory = Bukkit.getServer().createInventory(null, dataInput.readInt());

		// Read the serialized inventory
		for (int i = 0; i < inventory.getSize(); i++) {
			inventory.setItem(i, (ItemStack) dataInput.readObject());
		}

		dataInput.close();
		return inventory;
	} catch (ClassNotFoundException e) {
		throw new IOException("Unable to decode class type.", e);
	}
}
 
开发者ID:michaelkrauty,项目名称:Kettle,代码行数:18,代码来源:Util.java


示例9: deserializeItemStack

import org.bukkit.util.io.BukkitObjectInputStream; //导入依赖的package包/类
public static ItemStack deserializeItemStack(String s) {
    try {
        byte[] b = BukkitObjectUtil.hexStringToByteArray(s);
        ByteArrayInputStream bais = new ByteArrayInputStream(b);
        BukkitObjectInputStream bois = new BukkitObjectInputStream(bais);

        ItemStack items = (ItemStack) bois.readObject();

        bois.close();
        bais.close();
        return items;
    } catch (Exception ex) {
        ex.printStackTrace();
    }
    return null;
}
 
开发者ID:DemigodsRPG,项目名称:Stoa,代码行数:17,代码来源:ItemUtil.java


示例10: deserializeItemStacks

import org.bukkit.util.io.BukkitObjectInputStream; //导入依赖的package包/类
public static ItemStack[] deserializeItemStacks(String s) {
    try {
        byte[] b = BukkitObjectUtil.hexStringToByteArray(s);
        ByteArrayInputStream bais = new ByteArrayInputStream(b);
        BukkitObjectInputStream bois = new BukkitObjectInputStream(bais);

        ItemStack[] items = (ItemStack[]) bois.readObject();

        bois.close();
        bais.close();
        return items;
    } catch (Exception ex) {
        ex.printStackTrace();
    }
    return null;
}
 
开发者ID:DemigodsRPG,项目名称:Stoa,代码行数:17,代码来源:ItemUtil.java


示例11: deserializePotionEffects

import org.bukkit.util.io.BukkitObjectInputStream; //导入依赖的package包/类
public static List<PotionEffect> deserializePotionEffects(String s) {
    try {
        byte[] b = BukkitObjectUtil.hexStringToByteArray(s);
        ByteArrayInputStream bais = new ByteArrayInputStream(b);
        BukkitObjectInputStream bois = new BukkitObjectInputStream(bais);

        PotionEffect[] eff = (PotionEffect[]) bois.readObject();

        bois.close();
        bais.close();
        return Arrays.asList(eff);
    } catch (Exception ex) {
        ex.printStackTrace();
    }
    return null;
}
 
开发者ID:DemigodsRPG,项目名称:Stoa,代码行数:17,代码来源:PotionEffectUtil.java


示例12: fromBase64

import org.bukkit.util.io.BukkitObjectInputStream; //导入依赖的package包/类
public static Inventory fromBase64(String data) throws IOException {
    try {
        ByteArrayInputStream inputStream = new ByteArrayInputStream(Base64Coder.decodeLines(data));
        BukkitObjectInputStream dataInput = new BukkitObjectInputStream(inputStream);
        Inventory inventory = Bukkit.getServer().createInventory(null, dataInput.readInt());

        // Read the serialized inventory
        for (int i = 0; i < inventory.getSize(); i++) {
            inventory.setItem(i, (ItemStack) dataInput.readObject());
        }
        dataInput.close();
        return inventory;
    } catch (ClassNotFoundException e) {
        throw new IOException("Unable to decode class type.", e);
    }
}
 
开发者ID:SecondFlight,项目名称:pvpmain,代码行数:17,代码来源:BukkitSerialization.java


示例13: NationsContainer

import org.bukkit.util.io.BukkitObjectInputStream; //导入依赖的package包/类
public NationsContainer(NBTCompoundTag rootTag, Chunk chunk) throws IOException, ClassNotFoundException
{		
	int x = ((NBTShortTag)rootTag.getTag("X")).getValue() + chunk.getX() * 16;
	int y = ((NBTShortTag)rootTag.getTag("Y")).getValue();
	int z = ((NBTShortTag)rootTag.getTag("Z")).getValue() + chunk.getZ() * 16;
	
	location = new Location(chunk.getWorld(), x,y,z);
	
	byte[] itemsRaw = ((NBTByteArrayTag)rootTag.getTag("BukkitItemStackArray")).getValue();
	ByteArrayInputStream itemsStream = new ByteArrayInputStream(itemsRaw);		
	BukkitObjectInputStream bois = new BukkitObjectInputStream(itemsStream);
	
	items = (ItemStack[])bois.readObject();		
	bois.close();
	
	invType = InventoryType.valueOf(((NBTStringTag)rootTag.getTag("InventoryType")).getValue());
}
 
开发者ID:marsglorious,项目名称:NewNations,代码行数:18,代码来源:NationsContainer.java


示例14: stringToInventory

import org.bukkit.util.io.BukkitObjectInputStream; //导入依赖的package包/类
/**
 * Transfer a string into an inventory
 *
 * @param data String
 * @return Inventory
 * @throws IOException Failed.
 */
@Deprecated
public static Inventory stringToInventory(String data) throws IOException {
	try {
		ByteArrayInputStream inputStream = new ByteArrayInputStream(Base64Coder.decodeLines(data));
		BukkitObjectInputStream dataInput = new BukkitObjectInputStream(inputStream);
		Inventory inventory = Bukkit.getServer().createInventory(null, dataInput.readInt());

		// Read the serialized inventory
		for (int i = 0; i < inventory.getSize(); i++) {
			inventory.setItem(i, (ItemStack) dataInput.readObject());
		}
		dataInput.close();
		return inventory;
	} catch (ClassNotFoundException e) {
		throw new IOException("Unable to decode class type.", e);
	}
}
 
开发者ID:CodeMyAss,项目名称:CTBAPI,代码行数:25,代码来源:CTBAPI.java


示例15: fromBase64

import org.bukkit.util.io.BukkitObjectInputStream; //导入依赖的package包/类
public static Inventory fromBase64(String data) {
    try {
        ByteArrayInputStream inputStream = new ByteArrayInputStream(Base64Coder.decodeLines(data));
        BukkitObjectInputStream dataInput = new BukkitObjectInputStream(inputStream);
        Inventory inventory = Bukkit.getServer().createInventory(null, dataInput.readInt());

        // Read the serialized inventory
        for (int i = 0; i < inventory.getSize(); i++) {
            inventory.setItem(i, (ItemStack) dataInput.readObject());
        }
        dataInput.close();
        return inventory;
    } catch (Exception e) {
    }
    return null;
}
 
开发者ID:drtshock,项目名称:PlayerVaults,代码行数:17,代码来源:Base64Serialization.java


示例16: fromBase64

import org.bukkit.util.io.BukkitObjectInputStream; //导入依赖的package包/类
/**
 *
 * A method to get an {@link Inventory} from an encoded, Base64, string.
 *
 * <p>
 *
 * Special thanks to Comphenix in the Bukkit forums or also known
 * as aadnk on GitHub.
 *
 * <a href="https://gist.github.com/aadnk/8138186">Original Source</a>
 *
 * @param data Base64 string of data containing an inventory.
 * @return Inventory created from the Base64 string.
 * @throws IOException if we were unable to parse the base64 string
 */
public static Inventory fromBase64(String data) throws IOException {
    if(data.isEmpty()) return Bukkit.getServer().createInventory(null, 0);

    try {
        ByteArrayInputStream inputStream = new ByteArrayInputStream(Base64Coder.decodeLines(data));
        BukkitObjectInputStream dataInput = new BukkitObjectInputStream(inputStream);
        int size = dataInput.readInt();
        Inventory inventory = Bukkit.getServer().createInventory(null, (int)Math.ceil((double)size / inventoryMultipule) * inventoryMultipule);

        // Read the serialized inventory
        for (int i = 0; i < size; i++) {
            inventory.setItem(i, (ItemStack) dataInput.readObject());
        }

        dataInput.close();
        inputStream.close();
        return inventory;
    } catch (ClassNotFoundException e) {
        throw new IOException("Unable to decode class type.", e);
    }
}
 
开发者ID:graywolf336,项目名称:Jail,代码行数:37,代码来源:Util.java


示例17: itemStackArrayFromBase64

import org.bukkit.util.io.BukkitObjectInputStream; //导入依赖的package包/类
/**
 * Gets an array of ItemStacks from Base64 string.
 *
 * <p>
 *
 * Base off of {@link #fromBase64(String)}.
 *
 * @param data Base64 string to convert to ItemStack array.
 * @return ItemStack array created from the Base64 string.
 * @throws IOException if we was unable to parse the base64 string
 */
public static ItemStack[] itemStackArrayFromBase64(String data) throws IOException {
    if(data.isEmpty()) return new ItemStack[] {};

    try {
        ByteArrayInputStream inputStream = new ByteArrayInputStream(Base64Coder.decodeLines(data));
        BukkitObjectInputStream dataInput = new BukkitObjectInputStream(inputStream);
        ItemStack[] items = new ItemStack[dataInput.readInt()];

        // Read the serialized inventory
        for (int i = 0; i < items.length; i++) {
            items[i] = (ItemStack) dataInput.readObject();
        }

        dataInput.close();
        return items;
    } catch (ClassNotFoundException e) {
        throw new IOException("Unable to decode class type.", e);
    }
}
 
开发者ID:graywolf336,项目名称:Jail,代码行数:31,代码来源:Util.java


示例18: decodeItemStack

import org.bukkit.util.io.BukkitObjectInputStream; //导入依赖的package包/类
public static ItemStack decodeItemStack(byte[] buf) {
    try (ByteArrayInputStream inputStream = new ByteArrayInputStream(buf)) {
        try (BukkitObjectInputStream dataInput = new BukkitObjectInputStream(inputStream)) {
            return (ItemStack) dataInput.readObject();
        }
    } catch (ClassNotFoundException | IOException e) {
        throw new RuntimeException(e);
    }
}
 
开发者ID:lucko,项目名称:helper,代码行数:10,代码来源:InventorySerialization.java


示例19: decodeItemStacks

import org.bukkit.util.io.BukkitObjectInputStream; //导入依赖的package包/类
public static ItemStack[] decodeItemStacks(byte[] buf) {
    try (ByteArrayInputStream inputStream = new ByteArrayInputStream(buf)) {
        try (BukkitObjectInputStream dataInput = new BukkitObjectInputStream(inputStream)) {
            ItemStack[] items = new ItemStack[dataInput.readInt()];
            for (int i = 0; i < items.length; i++) {
                items[i] = (ItemStack) dataInput.readObject();
            }
            return items;
        }
    } catch (ClassNotFoundException | IOException e) {
        throw new RuntimeException(e);
    }
}
 
开发者ID:lucko,项目名称:helper,代码行数:14,代码来源:InventorySerialization.java


示例20: decodeInventory

import org.bukkit.util.io.BukkitObjectInputStream; //导入依赖的package包/类
public static Inventory decodeInventory(byte[] buf, String title) {
    try (ByteArrayInputStream inputStream = new ByteArrayInputStream(buf)) {
        try (BukkitObjectInputStream dataInput = new BukkitObjectInputStream(inputStream)) {
            Inventory inventory = Bukkit.getServer().createInventory(null, dataInput.readInt(), title);
            for (int i = 0; i < inventory.getSize(); i++) {
                inventory.setItem(i, (ItemStack) dataInput.readObject());
            }
            return inventory;
        }
    } catch (ClassNotFoundException | IOException e) {
        throw new RuntimeException(e);
    }
}
 
开发者ID:lucko,项目名称:helper,代码行数:14,代码来源:InventorySerialization.java



注:本文中的org.bukkit.util.io.BukkitObjectInputStream类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java ReferralException类代码示例发布时间:2022-05-21
下一篇:
Java RendererCapabilities类代码示例发布时间:2022-05-21
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap