//=======================================================
//保存数据到文件
//======================================================= /// <summary>
/// 保存数据data到文件,返回值为保存的文件名
/// </summary>
public string SaveToFile(String data, String name, bool mute)
{
String filePath = "";
//若未命名,则使用系统时间自动命名
if (name == null || name.Trim().Equals("(重命名)") || name.Trim().Equals(""))
{
name = DateTime.Now.ToLongTimeString().Replace(":", "."); //使用系统时间自动为文件命名
filePath = SaveToFile(data, name, false); //保存数据到文件
return filePath; //返回保存的文件名
}
try
{
filePath = SaveProcess(data, name); //保存数据并记录文件完整路径
if (!mute) MessageBox.Show("成功导出数据到:“" + filePath + "”!");
return filePath;
}
catch (Exception)
{
MessageBox.Show("保存数据失败");
return "";
}
}
/// <summary>
/// 保存数据data到文件处理过程,返回值为保存的文件名
/// </summary>
public String SaveProcess(String data, String name)
{
string CurDir = System.AppDomain.CurrentDomain.BaseDirectory + DateTime.Now.Date.ToString("yyyy_MM_dd") + @"(营救宠物)导出\"; //设置当前目录
if (!System.IO.Directory.Exists(CurDir)) System.IO.Directory.CreateDirectory(CurDir); //该路径不存在时,在当前文件目录下创建文件夹"导出.."
//不存在该文件时先创建
String filePath = CurDir + name + ".txt";
System.IO.StreamWriter file1 = new System.IO.StreamWriter(filePath, false); //文件已覆盖方式添加内容
file1.Write(data); //保存数据到文件
file1.Close(); //关闭文件
file1.Dispose(); //释放对象
return filePath;
}
/// <summary>
/// 保存数据data到原文件filePathName中
/// </summary>
public String SaveToNativeFile(String data, String filePathName, bool mute)
{
try
{
System.IO.StreamWriter file1 = new System.IO.StreamWriter(filePathName, false); //文件已覆盖方式添加内容
file1.Write(data); //保存数据到文件
file1.Close(); //关闭文件
file1.Dispose(); //释放对象
if (!mute) MessageBox.Show("成功导出数据到:“" + filePathName + "”!");
return filePathName;
}
catch (Exception)
{
return SaveToFile(data, "", mute); //若保存到原文件失败,则创建新文件进行保存
}
}
原文:http://blog.csdn.net/scimence/article/details/44828195