直接读文件,再写到串里就行了。
private static String getInfo(String tmpFile) throws IOException {
StringBuffer sbFile;
FileReader in = new FileReader(tmpFile);
char[] buffer = new char[4096];
int len;
sbFile = new StringBuffer();
while ( (len = in.read(buffer)) != -1) {
String s = new String(buffer, 0, len);
sbFile.append(s);
}
return sbFile.toString();
}
private static String getInfo(String tmpFile) throws IOException {
StringBuffer sbFile;
FileReader in = new FileReader(tmpFile);
char[] buffer = new char[4096];
int len;
sbFile = new StringBuffer();
while ( (len = in.read(buffer)) != -1) {
String s = new String(buffer, 0, len);
sbFile.append(s);
}
return sbFile.toString();
}
Reader rd=new FileReader(文件名);
String strIn=FileIO.readerToString(strIn);//读取Reader的全部内容
public static String readerToString(Reader rd) throws IOException{
StringBuffer sbTmp=new StringBuffer();
char[] b= new char(BLKSIZ);
int n; while((n=rd.read(b))>0){
sb.append(b,0,n);
} return sbTmp.toString();
}//读取输入流的内容
public static String inputStreamToString(InputStream isInputStream) throws IOException{
return readerToString(new InputStreamReader(isInputStream));
}
#include <fstream>
#include <sstream>
using namespace std;string ReadFileIntoStr()
{
ifstream ifile( "filename" );
ostringstream buffer; char ch;
while ( buf && ifile.get(ch) )
{
buf.str();
}
retrun buf.str();
}
int main()
{
string text = ReadFileIntoStr();
.....
retrun 0;
}
以上是c++ primer 上的源码,你不妨试试。
String rLine;
long filePointer=0;
long length=fin.length();
while(filePointer<length)
{
rLine=fin.readLine();
stfContent.append(rLine);
filePointer=fin.getFilePointer();
}
fin.close(); String modContent=stfContent.toString();