我在资源文件夹(assets / question.txt)中的txt文件中占用了10行,从下面的代码中我可以从assets文件夹中的txt文件的开头逐行获取。但我想从4行的txt文件开始。请帮忙。
BufferedReader reader_ques;
try {
reader_ques = new BufferedReader(new InputStreamReader(getAssets().open("question.txt")));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
line_q = reader_ques.readLine();
} catch (IOException e) {
e.printStackTrace();
}
if (line_q != null)
{
question_tv.setText(line_q);
}
答案 0 :(得分:1)
最简单的方法是阅读它,忽略它们。例如:
try {
for(int i=0 ;i < 4; i++) {
reader_ques.readLine();
}
while ((line_q = reader_ques.readLine()) != null) {
// do something with line_q
}
} catch (IOException e) {
e.printStackTrace();
}
或者您可以拥有一个StringList:
ArrayList<String> fileContent = new ArrayList<String>();
try {
while ((line_q = reader_ques.readLine()) != null) {
fileContent.add(line_q);
}
}
在第二种情况下,您在ArrayList
的索引0处拥有该文件的第一行,依此类推
如果您想要第5个字符串,那么
String myContent = fileContent.get(5)
答案 1 :(得分:0)
String line = FileUtils.readLines(file).get(lineNumber);
试试这个..
如果您有bufferReader,请尝试按照
LineIterator lineIterator = IOUtils.lineIterator(reader_ques);
for (int lineNumber = 0; lineIterator .hasNext(); lineNumber++) {
String line = (String) lineIterator .next();
if (lineNumber == expectedLineNumber) {
return line;
}
}
要使用上面的代码,您需要使用此库 - http://commons.apache.org/proper/commons-io/download_io.cgi
或者这 - &gt; http://www.motorlogy.com/apache//commons/io/binaries/commons-io-2.4-bin.zip