如下程序写入是乱码,可读出来是正确的应该怎么改
import java.io.*;
public class rwfile
{
public static void main(String[] args)
{
String s="",s2="";
int c=0;
try
{
DataOutputStream out2=new DataOutputStream(new BufferedOutputStream(new FileOutputStream("c:\\data.txt")));
out2.writeDouble(3.14159);
out2.writeChars("that was pi\n");
out2.writeBytes("that was pi\n");
out2.close();
DataInputStream in5=new DataInputStream(new BufferedInputStream(new FileInputStream("c:\\data.txt")));
BufferedReader in5br=new BufferedReader(new InputStreamReader(in5,"UTF-8"));
System.out.println(in5.readDouble());
System.out.println(in5br.readLine());
System.out.println(in5br.readLine());
}catch(Exception e)
{
System.out.println(e);
}
}
}
import java.io.*;
public class rwfile
{
public static void main(String[] args)
{
String s="",s2="";
int c=0;
try
{
DataOutputStream out2=new DataOutputStream(new BufferedOutputStream(new FileOutputStream("c:\\data.txt")));
out2.writeDouble(3.14159);
out2.writeChars("that was pi\n");
out2.writeBytes("that was pi\n");
out2.close();
DataInputStream in5=new DataInputStream(new BufferedInputStream(new FileInputStream("c:\\data.txt")));
BufferedReader in5br=new BufferedReader(new InputStreamReader(in5,"UTF-8"));
System.out.println(in5.readDouble());
System.out.println(in5br.readLine());
System.out.println(in5br.readLine());
}catch(Exception e)
{
System.out.println(e);
}
}
}
不用转成utf-8.
^_^
就不会是乱码了。^_^
PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter("c:\\data.txt")));