導航:首頁 > 編程語言 > javastringxml解析

javastringxml解析

發布時間:2025-01-06 04:12:13

A. java中如何用JAXBContext解析XML字元串 注意是字元串

在Java中,使用JAXBContext解析XML字元串是一個常見的操作。首先,定義一個對應的Java類,比如Student類,它應包含與XML元素相對應的屬性。這里提供了一個示例:

String xml="<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><student><classRoom><className>計算機</className><id>1</id></classRoom><id>1</id><username>zhangsan</username></student>";

接下來,通過JAXBContext.newInstance(Student.class)實例化JAXBContext對象。然後,利用該對象創建Unmarshaller實例。

Unmarshaller um=ctx.createUnmarshaller();

接著,通過Unmarshaller對象的unmarshal方法解析XML字元串。使用StringReader作為參數,將XML字元串包裝成一個Reader對象。

Student stu=(Student)um.unmarshal(new StringReader(xml));

最後,通過stu對象獲取相關信息。例如,獲取stu的classRoom對象,並進一步獲取classRoom的className屬性。

System.out.println(stu.getClassRoom().getClassName());

通過這些步驟,可以成功將XML字元串解析成對應的Java對象,並進一步獲取所需信息。

B. JAVA中如何用DOM4J將一個字元串解析成XML格式

用:
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
Document doc = factory.newDocumentBuilder().parse(new ByteArrayInputStream(xmlStr.getBytes()));
試試。

C. 如何用java封裝解析一個多層次的XML文件,急求大神幫助

下面提供了XML解析成實體類,以及實體類轉換成xml的方法。
public class SwitchXML {

private XStream xStream = new XStream();

private String xmlPath = "D:/data.xml";

// 1. obj -> xml(object類型轉換為xml類型)
public String printXML(User user) {
System.out.println("obj -> xml");
String xml = xStream.toXML(user);
System.out.println(xml);
return xml;
}

// 2. xml->obj(xml類型轉換為object類型,並列印)
public void printObj(String xml) {
System.out.println("xml -> obj");
User u = (User) xStream.fromXML(xml);
System.out.println(u.getUserName() + " " + u.getPassWord() + " " + u.getRegisteredTime());
}

// 3. 將object類型轉換為xml類型,並寫入XML文件(其他格式也可以,比如txt文件)
public void writerXML(User user) {
try {
FileOutputStream fs = new FileOutputStream(xmlPath);
xStream.toXML(user, fs);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}

// 4. 讀取XML文件,載入進相應Object類型
public void readerXML() {
User user = new User();
FileInputStream fis = null;
try {
fis = new FileInputStream(xmlPath);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
xStream.fromXML(fis, user);
// 列印對象信息
System.out.println(user.toString());
// 列印對象的屬性值
System.out.println(user.getUserName() + "-" + user.getPassWord() + "-"
+ user.getRegisteredTime());
}

public static void main(String[] args) {
// 用戶名
String username = "admin";
// 密碼
String password = "admin";
// 注冊時間
Date now = new Date();
SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");
String registeredtime = format.format(now);

User user = new User(username, password, registeredtime);
SwitchXML switchXML = new SwitchXML();

// 1. object類型轉換為xml類型,在控制台列印
String xml = switchXML.printXML(user);
System.out.println("---------------------");
// 2. xml類型轉換為object類型,在控制台列印
switchXML.printObj(xml);
System.out.println("---------------------");
// 3. 將object類型轉換為xml類型,並寫入XML文件
switchXML.writerXML(user);
System.out.println("---------------------");
// 4. 讀取XML文件,載入進相應Object類型
switchXML.readerXML();

}

閱讀全文

與javastringxml解析相關的資料

熱點內容
什麼app軟體可以學音標 瀏覽:669
郭天祥十天學會單片機優酷 瀏覽:330
什麼app兒童免費 瀏覽:582
遺傳演算法的理解 瀏覽:800
php刪除sql 瀏覽:841
紅進藍出指標源碼 瀏覽:700
python數據轉換列表類型 瀏覽:717
解壓後的文件怎麼解開 瀏覽:175
四川補貼認證下載什麼app 瀏覽:858
android設計風格 瀏覽:426
視頻不支持我的加密 瀏覽:342
布包pdf 瀏覽:267
程序員錄制課程表 瀏覽:626
eclipsephp斷點調試 瀏覽:895
虛擬成交量指標源碼 瀏覽:838
什麼APP有背單詞小組 瀏覽:43
蘋果2g視頻怎麼加密 瀏覽:204
人工智慧程序員和古典錄音師相遇 瀏覽:415
國產伺服器是怎麼來的 瀏覽:116
蓄勢待發源碼 瀏覽:458