⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bitsetconverter.java

📁 xstream是一个把java object序列化成xml文件的开源库,轻便好用
💻 JAVA
字号:
package com.thoughtworks.xstream.converters.collections;import com.thoughtworks.xstream.converters.Converter;import com.thoughtworks.xstream.converters.MarshallingContext;import com.thoughtworks.xstream.converters.UnmarshallingContext;import com.thoughtworks.xstream.io.HierarchicalStreamReader;import com.thoughtworks.xstream.io.HierarchicalStreamWriter;import java.util.BitSet;import java.util.StringTokenizer;/** * Converts a java.util.BitSet to XML, as a compact * comma delimited list of ones and zeros. * * @author Joe Walnes */public class BitSetConverter implements Converter {    public boolean canConvert(Class type) {        return type.equals(BitSet.class);    }    public void marshal(Object source, HierarchicalStreamWriter writer, MarshallingContext context) {        BitSet bitSet = (BitSet) source;        StringBuffer buffer = new StringBuffer();        boolean seenFirst = false;        for (int i = 0; i < bitSet.length(); i++) {            if (bitSet.get(i)) {                if (seenFirst) {                    buffer.append(',');                } else {                    seenFirst = true;                }                buffer.append(i);            }        }        writer.setValue(buffer.toString());    }    public Object unmarshal(HierarchicalStreamReader reader, UnmarshallingContext context) {        BitSet result = new BitSet();        StringTokenizer tokenizer = new StringTokenizer(reader.getValue(), ",", false);        while (tokenizer.hasMoreTokens()) {            int index = Integer.parseInt(tokenizer.nextToken());            result.set(index);        }        return result;    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -