📄 userlistparser.java
字号:
package user.xml;
import gui.LogIn;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Scanner;
import java.util.Vector;
import javax.xml.parsers.*;
import org.xml.sax.*;
import org.xml.sax.helpers.*;
public class UserListParser extends DefaultHandler {
UserList userL = UserList.getInstance();
public void fromXmlFile(String file) {
try {
SAXParser p = SAXParserFactory.newInstance().newSAXParser();
p.parse(new File(file), this);
} catch (ParserConfigurationException e) {
System.out.println("Couldn't create parser");
e.printStackTrace();
} catch (SAXException e) {
System.out.println("Error parsing");
e.printStackTrace();
} catch (IOException e) {
System.out.println("I/O error");
e.printStackTrace();
}
}
private String actualString = "";
private Vector<Users> actualUsers = new Vector<Users>();
private String actualFirstName = "";
private String actualLastName = "";
private String actualUsername = "";
private String actualPassword = "";
public void startElement(String uri, String localName, String qName,
Attributes attributes) throws SAXException {
actualString = "";
if (qName.equals("user")) {
actualUsers = new Vector<Users>();
actualFirstName = "";
actualLastName = "";
actualUsername = "";
actualPassword = "";
}
}
public void endElement(String uri, String localName, String qName) {
if (qName.equals("username")) {
actualUsername = actualString;
ArrayList<String> test = new ArrayList<String>();
test.add(actualUsername);
System.out.println(test);
}
if (qName.equals("firstname"))
actualFirstName = actualString;
else if (qName.equals("lastname"))
actualLastName = actualString;
else if (qName.equals("username")) {
actualUsername = actualString;
//System.out.println(actualUsername);
//String usr = actualString;
//System.out.println(usr);
} else if (qName.equals("password")) {
actualPassword = actualString;
// String pas = actualString;
// System.out.println(pas);
} else if (qName.equals("user"))
userL.addUser(new Users(actualFirstName, actualLastName,
actualUsername, actualPassword));
}
public void characters(char ch[], int start, int length)
throws SAXException {
String s = new String(ch, start, length);
actualString += s;
}
public void listUsername(String usern) {
if (usern.equals("username")) {
actualUsername = actualString;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -