/**
* 改正下面程序的错误
*
* 向文件testpw.txt中以UTF-8编码写入一行字符串:
* 你好!我喜欢java!
*
* print 打印
*
* @author Xiloer
*
*/
public class Test02 {
// try {
// FileOutputStream fos = new FileOutputStream("testpw.txt");
// OutputStreamWriter osw = new OutputStreamWriter(fos,"UFT-8");
// BufferedWriter bw = new BufferedWriter(osw);
// PrintWriter pw = new PrintWriter(bw);
//
// pw.println("你好!我喜欢java!");
// system.out.println("写出完毕!");
// }catch(Exception e) {
// System.out.println("出错了!");
// }
}
FileOutPutStram可以直接写byte数组的,可以这么写
try(FileOutputStream for = new FileOutputStream(new File())) {
for.write("我好喜欢Java".getBytes("utf-8"));
} catch (IOException e){}
手机回答,可能有些拼错了,大概代码就这么写就行了
去掉注释,把这些代码写在main函数里
这段程序的错误在于没有正确地使用UTF-8编码来写入文件。应该使用OutputStreamWriter来将字符串写入文件,并指定编码格式为UTF-8。另外,print后面的注释应该删除。
以下是改正后的代码示例:
import java.io.*;
public class Test {
public static void main(String[] args) {
try {
OutputStreamWriter writer = new OutputStreamWriter(new FileOutputStream("testpw.txt"), "UTF-8");
writer.write("你好!我喜欢java!");
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}