110,533
社区成员
发帖
与我相关
我的任务
分享
public static void Main()
{
string[] str = { "热菜", "凉菜", "酒类", "饮料", "面食" };
FileStream fs = new FileStream("c:\\a.txt", FileMode.Create, FileAccess.ReadWrite, FileShare.None);
for (int i = 0; i < str.Length; i++)
{
byte[] buf = Encoding.UTF8.GetBytes(str[i]);
fs.Write(buf, 0, buf.Length);
}
var resultStr = new List<string>() { };
FileStream fs1 = new FileStream("c:\\a.txt", FileMode.Open, FileAccess.Read, FileShare.None);
using (var stream = new StreamReader(fs1, Encoding.UTF8))
{
while (!stream.EndOfStream)
{
resultStr.Add(stream.ReadLine());
}
}
var str = resultStr.ToArray();//数组/// <summary>
/// 对象转字符串(序列化后转Base64编码字符串)
/// </summary>
/// <param name="obj">对象</param>
/// <returns>字符串</returns>
public static string ObjectToString<T>(T obj)
{
using (MemoryStream stream = new MemoryStream())
{
IFormatter formatter = new BinaryFormatter();
formatter.Serialize(stream, obj);
stream.Position = 0;
byte[] buffer = new byte[stream.Length];
stream.Read(buffer, 0, buffer.Length);
return Convert.ToBase64String(buffer);
}
}
/// <summary>
/// 字符串转对象(Base64编码字符串反序列化为对象)
/// </summary>
/// <param name="str">字符串</param>
/// <returns>对象</returns>
public static T StringToObject<T>(string str)
{
using (MemoryStream stream = new MemoryStream())
{
byte[] bytes = Convert.FromBase64String(str);
stream.Write(bytes, 0, bytes.Length);
stream.Position = 0;
IFormatter formatter = new BinaryFormatter();
return (T)formatter.Deserialize(stream);
}
}
//保存文件
string[] str = { "热菜", "凉菜", "酒类", "饮料", "面食" };
string s = ObjectToString<string[]>(str);
Console.WriteLine(s);
StreamWriter sw = new StreamWriter("test.txt");
sw.WriteLine(s);
sw.Close();
//读取文件
StreamReader sr = new StreamReader("test.txt");
string[] newStr = StringToObject<string[]>(sr.ReadToEnd());
sr.Close();
foreach (var item in newStr)
{
Console.WriteLine(item);
}
FileStream fs1 = new FileStream("c:\\a.txt", FileMode.Open, FileAccess.Read, FileShare.None);
using (var stream = new StreamReader(fs1, Encoding.UTF8))
{
Console.WriteLine(stream.ReadToEnd());
}
string sr[]="热菜凉菜酒类饮料面食";
[/quote]
是包含5个元素的数组啊
FileStream fs1 = new FileStream("c:\\a.txt", FileMode.Open, FileAccess.Read, FileShare.None);
using (var stream = new StreamReader(fs1, Encoding.UTF8))
{
while (!stream.EndOfStream)
{
resultStr.Add(stream.ReadLine());
}
}
var resultArr = resultStr.ToArray();
string sr[]="热菜凉菜酒类饮料面食";