2012-07-31 47 views
1

我想轉換成text file。我xml file有大量的字符串,但我不希望在XML中直接寫。如何將文本文件轉換爲XML

讓我做了一個文本文件,現在我想這個

文本文件轉換成XML格式的,但是當我運行這個文件沒有得到輸出。這裏是我的

代碼:

public void convert() throws Exception { 

String text[]=new String[10]; 

FileOutputStream fout = new FileOutputStream("res/values/mysml.xml"); 

OutputStreamWriter out = new OutputStreamWriter(fout); 

InputStream in= getAssets().open("myText.txt"); 

Scanner scn = new Scanner(is); 

for(int i=0;i<10;i++) 

text[i]=bin.readLine(); 

out.write("<?xml version=\"1.0\"?>\r\n"); 

out.write("<resources>\r\n"); 

for (int i = 0; i < 10; i++){ 

out.write("<item>"+text[i]+"</item>"); 

} 

out.write("</resources>"); 

out.flush(); 

out.close(); 

}

+1

您是否在關閉流之前嘗試調用out.flush()? – rfsbraz 2012-07-31 10:13:20

+0

你在哪裏關閉第一個'for循環?' – MAC 2012-07-31 10:16:04

+0

* close()*會先沖洗它。 – adatapost 2012-07-31 10:21:56

回答

0

嘗試

BufferedReader reader=new BufferedReader(new InputStreamReader(in)); 

String line=null; 
out.write("<?xml version=\"1.0\"?>\r\n"); 
out.write("<resources>\r\n"); 
while((line=reader.readLine())!=null) 
{ 
    out.write("<item>"+line+"</item>"); 
} 
out.write("</resources>"); 
out.close(); 
0
for(int i=0;i<10;i++){ 
    text[i]=bin.readLine(); 
} <----- 

out.write("<?xml version=\"1.0\"?>\r\n"); 

out.write("<resources>\r\n"); 



for (int i = 0; i < 10; i++){ 
    out.write("<item>"+text[i]+"</item>"); 
} 
0

刷新到流中加入這一行的位置:

out.write("</resources>"); 
//line 
out.flush(); 

out.close(); 
2

據我所知,你想在運行時動態創建一個xml在你的應用程序的res/values/文件夾中。我不認爲這是可能的,因爲您只能在應用程序資源中讀取訪問權限。不要將xml存儲到您的res文件夾中,請嘗試使用內部或外部存儲器。有關安卓存儲選項的更多信息,請參閱here

2

如果要做到這一點,使用StAX的。你可以用更簡單的方式打開關閉標籤,作者也會照顧你的文件。

XMLOutputFactory output = XMLOutputFactory.newInstance(); 
XMLStreamWriter writer = output.createXMLStreamWriter(new BufferedWriter(new FileWriter(new File(FILE_PATH)))); 
writer.writeStartDocument("UTF-8","1.0"); 
// Write Whatever file you have as string 
writer.flush(); 
writer.close(); 

而且StAX的附帶JDK 1.6

0

檢查您的網站http://www.xml-sitemaps.com/

在滾動窗口進行更改,說,在子文件夾添加HTML文件。把編碼放在裏面,就像你看到的那樣。

不要從網頁中保存XML文件。它會給你在窗口中不變的代碼。

從滾動窗口中複製文本。將其粘貼到空白的記事本頁面中。

將其另存爲「sitemap.xml」。

記住,把報價市場上贏得保存爲XML文件。