string每次修改字符串都是新建,然后删除旧的串会很影响效率,而stringbuilder是在字符串的末尾操作,和string比较快,
在小数据库的时候string和stringbuilder没有什么大的影响,但是大数据量的时候,stringbuilder会比string快很多,
那为什么在.net框架下不去掉string呢,难道只是因为传统的继承其他语言?
public static void main(String[] args) throws IOException {
try {
FileInputStream fis = new FileInputStream("pw.txt");
InputStreamReader isr = new InputStreamReader(fis,"UTF-8");
BufferedReader br = new BufferedReader(isr);
StringBuilder builder = new StringBuilder();
String str =null;
while((str=br.readLine())!=null){
//通过builder添加字符串的内容
builder.append(str);
}
str = builder.toString();
System.out.println(str);
FileOutputStream fos = new FileOutputStream("pw.txt",true);
fos.write(str.getBytes("UTF-8"));
System.out.println("写入完毕");
br.close();
fos.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}