写入文件
2015-03-22 16:27:31 访问(2496) 赞(0) 踩(0)
#region 写入文件
/// <summary>
/// 写入文件
/// </summary>
/// <param name="fileName">文件名</param>
/// <param name="textValue">文件内容</param>
public void WriteFile
(
string fileName,
string textValue
)
{
WriteFile(fileName, textValue, null, true, true);
}
/// <summary>
/// 写入文件
/// </summary>
/// <param name="fileName">文件名</param>
/// <param name="textValue">文件内容</param>
/// <param name="textEncoding">编码</param>
public void WriteFile
(
string fileName,
string textValue,
System.Text.Encoding textEncoding
)
{
WriteFile(fileName, textValue, textEncoding, true, true);
}
/// <summary>
/// 写入文件
/// </summary>
/// <param name="fileName">文件名</param>
/// <param name="textValue">文件内容</param>
/// <param name="textEncoding">编码</param>
/// <param name="IsOverwrite">是否覆盖</param>
public void WriteFile
(
string fileName,
string textValue,
System.Text.Encoding textEncoding,
bool IsOverwrite
)
{
WriteFile(fileName, textValue, textEncoding, IsOverwrite, true);
}
/// <summary>
/// 写入文件
/// </summary>
/// <param name="fileName">文件名</param>
/// <param name="textValue">文件内容</param>
/// <param name="textEncoding">编码</param>
/// <param name="IsOverwrite">是否覆盖</param>
/// <param name="IsAppend">是否追加</param>
public void WriteFile
(
string fileName,
string textValue,
System.Text.Encoding textEncoding,
bool IsOverwrite,
bool IsAppend
)
{
if (fileName == null || fileName.Length == 0)
{
throw new Exception
(
"方法:"
+ MethodBase.GetCurrentMethod().ReflectedType.FullName
+ " "
+ MethodBase.GetCurrentMethod().ToString()
+ " 发生异常:"
+ "传入参数:"
+ "string fileName"
+ "为null或为空。"
);
}
FileInfo info = new FileInfo(fileName);
if (info.Exists)
{
// 文件存在,且不覆盖 //
if (!IsOverwrite)
{
throw new Exception
(
"方法:"
+ MethodBase.GetCurrentMethod().ReflectedType.FullName
+ " "
+ MethodBase.GetCurrentMethod().ToString()
+ " 发生异常:"
+ "文件" + info.FullName + "已存在,并且不允许覆盖。"
);
}
// 如果不是追加 //
if (!IsAppend)
{
File.Delete(info.FullName);
}
}
else
{
// 创建目录 //
if (!info.Directory.Exists)
{
Directory.CreateDirectory(info.Directory.FullName);
}
}
FileStream fs = null;
StreamWriter m_streamWriter = null;
try
{
//创建一个文件流,用以写入或者创建一个StreamWriter
fs = new FileStream(info.FullName, FileMode.OpenOrCreate, FileAccess.Write);
if (textEncoding == null)
{
m_streamWriter = new StreamWriter(fs);
}
else
{
m_streamWriter = new StreamWriter(fs, textEncoding);
}
m_streamWriter.Flush();
// 使用StreamWriter来往文件中写入内容
if (IsAppend)
m_streamWriter.BaseStream.Seek(0, SeekOrigin.End);
m_streamWriter.Write(textValue);
m_streamWriter.Flush();
}
catch (Exception err)
{
throw err;
}
finally
{
if (m_streamWriter != null)
{
m_streamWriter.Flush();
m_streamWriter.Close();
}
if (fs != null)
{
fs.Close();
}
m_streamWriter = null;
fs = null;
}
}
#endregion 写入文件
标签:
C# 


写入文件 


FileStream 


WriteFile 


上一条:
下一条:
相关评论
发表评论