Java读入一个txt文件,并且从txt文件中的某一个单词开始读里面的数字
例如我的txt文件是okokokokokokbegin123213okok12412551endokok我想读入从begin开始的数字和字符然后到end结束我已经会读入t...
例如我的txt文件是 okokokokokokbegin123213okok12412551endokok
我想读入从begin开始的数字和字符 然后到end 结束 我已经会读入txt的程序 如何修改才行
public static void main(String[] args) {
// TODO Auto-generated method stub
File file = new File("C:/zc.txt");
BufferedReader
reader = null;
String tempString = null;
int line =1;
try
{
System.out.println("以行为单位读取文件内容,一次读一整行:");
reader = new BufferedReader(new
FileReader(file));
while ((tempString =
reader.readLine()) != null) {
System.out.println("Line"+ line + ":"
+tempString);
line
++ ;
}
reader.close();
} catch
(FileNotFoundException e) {
// TODO
Auto-generated catch block
e.printStackTrace();
} catch (IOException e)
{
// TODO Auto-generated catch
block
e.printStackTrace();
}finally{
if(reader != null){
try {
reader.close();
} catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
} 展开
我想读入从begin开始的数字和字符 然后到end 结束 我已经会读入txt的程序 如何修改才行
public static void main(String[] args) {
// TODO Auto-generated method stub
File file = new File("C:/zc.txt");
BufferedReader
reader = null;
String tempString = null;
int line =1;
try
{
System.out.println("以行为单位读取文件内容,一次读一整行:");
reader = new BufferedReader(new
FileReader(file));
while ((tempString =
reader.readLine()) != null) {
System.out.println("Line"+ line + ":"
+tempString);
line
++ ;
}
reader.close();
} catch
(FileNotFoundException e) {
// TODO
Auto-generated catch block
e.printStackTrace();
} catch (IOException e)
{
// TODO Auto-generated catch
block
e.printStackTrace();
}finally{
if(reader != null){
try {
reader.close();
} catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
} 展开
推荐于2016-10-16
展开全部
public static void main(String[] args) {
File file = new File("D:/123456.txt");
BufferedReader reader = null;
String tempString = null;
int line = 1;
try {
System.out.println("以行为单位读取文件内容,一次读一整行:");
StringBuffer sb = new StringBuffer(0);
reader = new BufferedReader(new FileReader(file));
while ((tempString = reader.readLine()) != null) {
System.out.println("Line" + line + ":" + tempString);
int start = tempString.indexOf("begin");
int end = tempString.indexOf("end");
if(start > -1){
if(end > -1){
sb.append(tempString.substring(start+"begin".length(), end));
}else{
sb.append(tempString.substring(tempString.indexOf("begin"), tempString.length()));
}
}
if(start > -1 && end == -1){
sb.append(tempString.substring(0, end));
}
line++;
}
System.out.println(sb.toString());
reader.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (reader != null) {
try {
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
运行结果:
以行为单位读取文件内容,一次读一整行:
Line1:okokokokokokbegin123213okok12412551endokok
123213okok12412551
更多追问追答
追问
你好 这个是不过多少行都读出来了么?在原来的基础上假设Txt里面很多行,我想分行保存 如何修改?谢谢
追答
能给一个txt的文本的样例给我么,因为我要确定一下你多行的时候,“beigin”和“end”的规则是什么,以及分行保存时什么概念,我的理解有这几种:
1:
假设文本时多行的,第一行有一个“begin”没有“end”第二行有一个“end”没有“begin”,那么
a.第一行,从“begin”开始到本行结束算是一条内容,保存;第二行从开始到“end”结束算一条内容,保存,
b.从第一行的“begin”开始,到第二行的“end”结束算是一条内容,并保存
2:是否文本的每一行都会存在一对“begin。。。。。end”的标记
说白了,截取的规则是以"begin。。。。。end"来截取,还是先以文本的行,在根据标记或者其他什么规则来截取的,例子发我QQ吧:九五七七四二四二七@qq.com
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询