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

📄 xmlentryprovider.java.svn-base

📁 一个JAVA程序员的游戏
💻 SVN-BASE
字号:
/*
 * KanjiData.java
 *
 * Created on 5. Dezember 2006, 21:02
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package kanjitori;

import com.sun.org.apache.xerces.internal.parsers.SAXParser;
import java.io.FileInputStream;
import java.io.FileReader;
import java.util.List;
import java.util.ArrayList;
import org.xml.sax.Attributes;
import org.xml.sax.InputSource;
import org.xml.sax.XMLReader;
import org.xml.sax.helpers.DefaultHandler;

/**
 *
 * @author Pirx
 */
public class KanjiData {
    
    private List<Entry> entries = new ArrayList<Entry>();
    
    /** Creates a new instance of LevelData */
    public KanjiData(String fileName) {
      try {
         XMLReader xmlReader = new SAXParser();
         xmlReader.setContentHandler(new KanjiDataHandler());
         InputSource is = new InputSource(new FileInputStream(fileName));
         xmlReader.parse(is);
      } catch(Exception ex) {
         ex.printStackTrace();
      }
    }
    
    List<Entry> getEntries() {
        return entries;
    }
    
    public int size(){
        return entries.size();
    }

    public Entry get(int index) {
        return entries.get(index);
    }
    
    private class KanjiDataHandler extends DefaultHandler {
        @Override
        public void startElement(String uri, String localName, String qName, Attributes attributes){
          if("entry".equals(qName)) {
             String key = attributes.getValue("key");
             String value = attributes.getValue("value");
             entries.add(new Entry(key, value));
          }    
        }  
    }
}

⌨️ 快捷键说明

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