c Shared state file read write implementation code

  • 2020-05-07 20:15:18
  • OfStack

 
using System.IO; 
using System.Text; 
namespace LucienBao.Commons 
{ 
public static class FileHelper 
{ 
public static string ShareRead(string file, Encoding encoding) 
{ 
string content = string.Empty; 
FileStream fs = new FileStream(file, FileMode.Open, FileAccess.Read, FileShare.ReadWrite); 
try 
{ 
if (fs.CanRead) 
{ 
byte[] buffer = new byte[fs.Length]; 
fs.Read(buffer, 0, buffer.Length); 
content = encoding.GetString(buffer); 
} 
} 
finally 
{ 
fs.Close(); 
fs.Dispose(); 
} 
return content; 
} 
public static void ShareAppend(string content, string file, Encoding encoding) 
{ 
ShareWrite(content, file, encoding, FileMode.Append); 
} 
public static void ShareWrite(string content, string file, Encoding encoding, FileMode fileMode) 
{ 
FileStream fs = new FileStream(file, fileMode, FileAccess.Write, FileShare.Read); 
try 
{ 
if (fs.CanWrite) 
{ 
byte[] buffer = encoding.GetBytes(content); 
if (buffer.Length > 0) 
{ 
fs.Write(buffer, 0, buffer.Length); 
fs.Flush(); 
} 
} 
} 
finally 
{ 
fs.Close(); 
fs.Dispose(); 
} 
} 
} 
} 

Related articles: