将 java.io.StringWriter 转换为 byte[] 数组
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/13453226/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Convert java.io.StringWriter to byte[] array
提问by Adeeb Cheulkar
How to convert java.io.StringWriter
to byte[]
array?
Using OpenCSV
i get StringWriter
sw
object and this sw
object I want to convert into byte[]
array.
如何转换java.io.StringWriter
为byte[]
数组?使用OpenCSV
i get StringWriter
sw
object 和这个sw
对象我想转换成byte[]
数组。
回答by Peter Lawrey
You can do
你可以做
byte[] bytes = stringWriter.toString().getBytes("UTF-8");
回答by Jon Skeet
You need to decide which encoding you want to use:
您需要决定要使用哪种编码:
- Call
StringWriter.toString()
to get the contents out as a string - Call
String.getBytes(Charset)
orString.getBytes(String)
to convert the string to a byte array
- 调用
StringWriter.toString()
以将内容作为字符串取出 - 调用
String.getBytes(Charset)
或String.getBytes(String)
将字符串转换为字节数组
Don'tuse the parameterless String.getBytes()
call - that will use the platform default encoding. Even if you wantto use that, I'd strongly encourage you to specify it explicitly, to make it clear to anyone who reads it.
不要使用无参数String.getBytes()
调用 - 这将使用平台默认编码。即使您想使用它,我也强烈建议您明确指定它,以便任何阅读它的人都能清楚地了解它。