如何让PrintWriter编写UTF-8?

yea*_* me 40 java utf-8 printwriter

如何PrintWriter编写UTF-8?

pstream = new PrintWriter(csocket.getOutputStream(), true);
String res = "some string";
pstream.println(res); // here I want to output string as UTF-8
Run Code Online (Sandbox Code Playgroud)

Njo*_*jol 47

使用OutputStreamWriter:

pstream = new PrintWriter(new OutputStreamWriter(
    csocket.getOutputStream(), StandardCharsets.UTF_8), true)
Run Code Online (Sandbox Code Playgroud)


小智 5

OutputStream os = new FileOutputStream("file.txt");
PrintWriter pw = new PrintWriter(new OutputStreamWriter(os, "UTF-8"));
Run Code Online (Sandbox Code Playgroud)