一些语言的按行读取文件的代码实现小结
Java实现
importjava.io.BufferedReader;
importjava.io.BufferedWriter;
importjava.io.FileNotFoundException;
importjava.io.FileReader;
importjava.io.FileWriter;
importjava.io.IOException;
publicclassJavaFile{
publicstaticvoidmain(String[]args){
try{
//readfilecontentfromfile
StringBuffersb=newStringBuffer("");
FileReaderreader=newFileReader("c://test.txt");
BufferedReaderbr=newBufferedReader(reader);
Stringstr=null;
while((str=br.readLine())!=null){
sb.append(str+"/n");
System.out.println(str);
}
br.close();
reader.close();
//writestringtofile
FileWriterwriter=newFileWriter("c://test2.txt");
BufferedWriterbw=newBufferedWriter(writer);
bw.write(sb.toString());
bw.close();
writer.close();
}
catch(FileNotFoundExceptione){
e.printStackTrace();
}
catch(IOExceptione){
e.printStackTrace();
}
}
}
C++实现
#include<string>
#include<iostream>
#include<stdlib.h>
#include<fstream>
intmain()
{
std::stringfile_name="123";
std::ifstreamfin(file_name.c_str());
std::stringtextline[3];
for(inti=0;i<3;++i)
getline(fin,textline[i],'\n');//遇到换行结束这一行的读取
for(inti=0;i<3;++i)
std::cout<<textline[i]<<'\n';
return0;
}
php实现
<?php
/**
*按行读取文件
*@paramstring$filename
*/
functionreadFileByLine($filename)
{
$fh=fopen($filename,'r');
while(!feof($fh)){
$line=fgets($fh);
echo$line;
}
fclose($fh);
}
//test
$filename="/home/wzy/test/sort.txt";
readFileByLine($filename);
c语言实现
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#defineLEN1024
intmain(void)
{
charfilename[LEN],buf[LEN];
FILE*fp;
intlen;
scanf("%s",filename);
fp=fopen(filename,"r");
if(fp==NULL)exit(-1);
while(fgets(buf,LEN,fp)!=NULL){
len=strlen(buf);
buf[len-1]='\0';//去掉换行符
printf("%s\n",buf);
}
return0;
}