您的位置:首页 > 其它

字符串与数组的转换

2007-07-18 10:25 225 查看
1。
字符串转换为字节数组,你需要指定编码,不同的编码,输出的字节数组是不一样的,
同时,读取的时候,也要使用对应的编码,否则非拉丁字符会乱出现乱码

string str = "hello world";
byte[] buffer = System.Text.Encoding.UTF8.GetBytes(str);
char[] chars = System.Text.Encoding.UTF8.GetChars(buffer);
chars = str.ToCharArray(); // 此方法内部使用 Unicode 编码
// byte[] buffer = System.Text.Encoding.GetEncode("GB2312").GetBytes(str);
//char[] chars = (char[])buffer; // CS0030: 无法将类型“byte[]”转换为“char[]”
chars = new char[buffer.Length];
Array.Copy(buffer, chars, buffer.Length); // 直接拷贝隐式转换

2。
事实上,如果你进行写字符串,可以选择 StreamWriter

string str = "hello world";
using(System.IO.FileStream fstream = new System.IO.FileStream("C://somefile")) {
System.IO.StreamWriter writer = new System.IO.StreamWriter(fstream);
writer.Write(str);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: