XML我通過閱讀文本形式.txt文件生成XML。但我得到了奇怪的性格結果。我想在xml中看到我的文本與在.txt文件中顯示的相同。奇怪字符結果通過java代碼
這裏爲txt文件我的文字
澤納
muškarac
devojčica
dečak
AUTOMOBIL
AUTOBUS
DRVO
kuća
亞飛
MACKA
PAS
cvet
,這裏是我的XML奇怪的結果。
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<resources>
<string name="0s0">žena</string>
<string name="1s1">muškarac</string>
<string name="2s2">devoj�ica</string>
<string name="3s3">de�ak</string>
<string name="4s4">automobil</string>
<string name="5s5">autobus</string>
<string name="6s6">drvo</string>
<string name="7s7">kuća</string>
<string name="8s8">avion</string>
<string name="9s9">ma�ka</string>
這是我的代碼。
FileInputStream fstream = new FileInputStream("D:/12.txt"); // Path of input text file
BufferedReader br = new BufferedReader(new InputStreamReader(fstream));
String strLine;
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
//root elements
Document doc = docBuilder.newDocument();
Element rootElement = doc.createElement("resources");
doc.appendChild(rootElement);
int i = 0;
String attrName;
//Read File Line By Line
while ((strLine = br.readLine()) != null) {
attrName = i+"s"+i;
i++;
//staff elements
Element string = doc.createElement("string");
rootElement.appendChild(string);
//set attribute to staff element
Attr attr = doc.createAttribute("name");
attr.setValue(attrName);
string.setAttributeNode(attr);
string.appendChild(doc.createTextNode(strLine));
}
//Close the input stream
in.close();
//write the content into xml file
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new File("D:\\italian.xml")); // Path of output text file
transformer.transform(source, result);
System.out.println("Done");
我研究了很多帖子都在這裏,但我不能讓我的願望的解決方案。只是我想在xml文件中看到與.txt文件中顯示的相同的文字記錄器/文本。
您需要標記您的XML源代碼以使它們顯示出來。只需選擇它並按下'{}'符號(注意這次他已經爲您完成了)。 – 2011-06-01 14:04:12
請注意,在此代碼中不需要創建'DataInputStream' - 您可以直接將'FileInputStream'實例傳遞給'InputStreamReader'。 – McDowell 2011-06-01 14:04:26
@Joachim:謝謝。 @McDowell:非常感謝你,是的你是對的, – Khokhar 2011-06-01 16:49:52