我寫我想寫一個解析文本文件收集所有的行,並把它變成一個功能的Android應用程序在文件中顯示所有內容的方式單個String對象並顯示文件中的內容。 顯示屏應該與文本文件中存在的所有'換行'字符一起。 我該怎麼做?是否存在,因爲它是用一個字符串對象
還像文件的端部,有一種使用在一個文件中的另一個標識符,這樣我可以在同一文件內具有多個部分的方法嗎?
在此先感謝
我寫我想寫一個解析文本文件收集所有的行,並把它變成一個功能的Android應用程序在文件中顯示所有內容的方式單個String對象並顯示文件中的內容。 顯示屏應該與文本文件中存在的所有'換行'字符一起。 我該怎麼做?是否存在,因爲它是用一個字符串對象
還像文件的端部,有一種使用在一個文件中的另一個標識符,這樣我可以在同一文件內具有多個部分的方法嗎?
在此先感謝
您可以將您從文本文件在一個單一的字符串,是沒有問題的解析什麼。
您還可以使用不同的字符串文本的每一行,但它會非常消耗資源和不必要的。
簡而言之,是的,你可以使用一個字符串作爲你的問題。
下面是一個將文本文件中的數據讀入String對象的示例。在這個例子中,文本文件是資產的一部分。你可以從打開sdcard文件的InputStream也:
public class AssetsTest extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView textView = new TextView(this);
setContentView(textView);
AssetManager assetManager = getAssets();
InputStream inputStream = null;
try {
inputStream = assetManager.open("texts/myawesometext.txt");
String text = loadTextFile(inputStream);
textView.setText(text);
} catch (IOException e) {
textView.setText("Couldn't load file");
} finally {
if (inputStream != null)
try {
inputStream.close();
} catch (IOException e) {
textView.setText("Couldn't close file");
}
}
}
public String loadTextFile(InputStream inputStream) throws IOException {
ByteArrayOutputStream byteStream = new ByteArrayOutputStream();
byte[] bytes = new byte[4096];
int len = 0;
while ((len = inputStream.read(bytes)) > 0)
byteStream.write(bytes, 0, len);
return new String(byteStream.toByteArray(), "UTF8");
}
thanks..but我該怎麼做? – Nikhil 2012-03-14 09:40:17
http://www.javapractices.com/topic/TopicAction.do?Id=87檢查這個鏈接的教程是非常好的。 – 2012-03-14 09:43:44