📄 esmquestionservice.java
字号:
/* * Created on Sep 18, 2004 * */package org.placelab.midp.server;import java.io.BufferedReader;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.FileReader;import java.io.IOException;import java.util.Enumeration;import java.util.Hashtable;import org.placelab.collections.HashtableSet;import org.placelab.util.StringUtil;public class ESMQuestionService implements BluetoothService { private Hashtable questions; public ESMQuestionService() { questions = new Hashtable(); } public ESMQuestionService(String f) { this(); try { BufferedReader reader = new BufferedReader(new FileReader(f)); for (;;) { String line = reader.readLine(); if (line == null) break; String[] fields = StringUtil.split(line, '|', 2); questions.put(fields[0], fields[1]); } } catch(IOException e) { System.err.println("ESM: cannot load questions: " + e); } } public String getName() { return "ESM Question Uploader (" + questions.size() + ")"; } public byte getServiceType() { return BluetoothService.ESM_QUESTION_SERVICE; } public void newClient(DataInputStream in, DataOutputStream out) { HashtableSet keys = new HashtableSet(); Enumeration e = questions.keys(); while(e.hasMoreElements()) { keys.addElement(e.nextElement()); } try { int count = keys.size(); System.out.println("Uploading " + count + " questions"); out.writeInt(count); Enumeration iter = keys.elements(); while (iter.hasMoreElements()) { String key = (String)iter.nextElement(); out.writeUTF(key); out.writeUTF((String)questions.get(key)); } out.flush(); if (in.readInt() != count) { System.err.println("Client didn't read the right abount"); } } catch (IOException ioe) { System.err.println("bad: " + ioe); } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -