Csharp/C Sharp by API/System.IO/File
Содержание
File.CreateText(String fileName)
<source lang="csharp"> using System; using System.IO; class MainClass {
static void Main(string[] args) { StreamWriter MyStream = null; string MyString = "Hello World"; try { MyStream = File.CreateText("MyFile.txt"); MyStream.Write(MyString); } catch (IOException e) { Console.WriteLine(e); } catch (Exception e) { Console.WriteLine(e); } finally { if (MyStream != null) MyStream.Close(); } }
}
</source>
File.Delete
<source lang="csharp">
using System; using System.IO; class MainClass {
static void Main() { string tempFile = Path.GetTempFileName(); Console.WriteLine("Using " + tempFile); using (FileStream fs = new FileStream(tempFile, FileMode.Open)) { // (Write some data.) } // Now delete the file. File.Delete(tempFile); }
}
</source>
File.Exists(String fileName)
<source lang="csharp"> using System; using System.IO; static class MainClass {
static void Main(string[] args) { Console.WriteLine(File.Exists("c:\\test.txt")); }
}
</source>
File.GetLastAccessTime
<source lang="csharp"> using System; using System.Windows.Forms; using System.IO; public class MainClass {
[STAThread] public static void Main() { OpenFileDialog dlgOpen = new OpenFileDialog(); if (dlgOpen.ShowDialog() == DialogResult.OK) { string s = dlgOpen.FileName; Console.WriteLine("Filename " + s); Console.WriteLine(" Created at " + File.GetCreationTime(s)); Console.WriteLine(" Accessed at " + File.GetLastAccessTime(s)); } }
}
</source>
File.OpenRead
<source lang="csharp"> using System; using System.Windows.Forms; using System.IO; class MainClass {
public static void Main() { FileStream inStream = File.OpenRead("c:\\text.txt"); FileStream outStream = File.OpenWrite("c:\\text.txt" + ".bak"); BufferedStream bufInStream = new BufferedStream(inStream); BufferedStream bufOutStream = new BufferedStream(outStream); byte[] buf = new byte[1024]; int bytesRead; while ((bytesRead = bufInStream.Read(buf, 0, 1024)) > 0) bufOutStream.Write(buf, 0, bytesRead); bufOutStream.Flush(); bufOutStream.Close(); bufInStream.Close(); outStream.Close(); inStream.Close(); }
}
</source>
File.OpenText
<source lang="csharp"> using System; using System.IO;
public class Exists { static public void Main (string [] args) { if (args.Length == 0) { Console.WriteLine ("Please enter a file name"); return; } if (!File.Exists (args[0])) { Console.WriteLine (args[0] + " does not exist"); return; } StreamReader reader; try { reader = File.OpenText (args[0]); } catch (Exception e) { Console.WriteLine (e.Message); Console.WriteLine ("Cannot open " + args[0]); return; } while (reader.Peek() >= 0) { Console.WriteLine (reader.ReadLine ()); } reader.Close (); } } </source>
File.OpenWrite
<source lang="csharp">
using System; using System.Windows.Forms; using System.IO; class MainClass {
public static void Main() { FileStream inStream = File.OpenRead("c:\\text.txt"); FileStream outStream = File.OpenWrite("c:\\text.txt" + ".bak"); BufferedStream bufInStream = new BufferedStream(inStream); BufferedStream bufOutStream = new BufferedStream(outStream); byte[] buf = new byte[1024]; int bytesRead; while ((bytesRead = bufInStream.Read(buf, 0, 1024)) > 0) bufOutStream.Write(buf, 0, bytesRead); bufOutStream.Flush(); bufOutStream.Close(); bufInStream.Close(); outStream.Close(); inStream.Close(); }
}
</source>
File.ReadAllLines(String fileName)
<source lang="csharp"> using System; using System.Collections.Generic; using System.Text; using System.IO; class MainClass {
static void Main(string[] args) { StreamWriter writer = new StreamWriter(@"c:\myfile.txt"); for (int i = 0; i < 3; i++) { writer.Write(i.ToString()); } writer.Flush(); writer.Close(); foreach (string line in File.ReadAllLines(@"c:\myfile.txt")) { Console.WriteLine(line); } }
}
</source>
File.SetAccessControl
<source lang="csharp"> using System; using System.IO; using System.Security.AccessControl; class MainClass {
static void Main(string[] args) { FileStream stream; string fileName; fileName = Path.GetRandomFileName(); using (stream = new FileStream(fileName, FileMode.Create)) { // Do something. } SetRule(fileName, "Everyone", FileSystemRights.Read, AccessControlType.Deny); try { stream = new FileStream(fileName, FileMode.Create); } catch (Exception ex) { Console.WriteLine(ex.ToString()); } finally { stream.Close(); stream.Dispose(); } } static void AddRule(string filePath, string account, FileSystemRights rights, AccessControlType controlType) { FileSecurity fSecurity = File.GetAccessControl(filePath); fSecurity.AddAccessRule(new FileSystemAccessRule(account, rights, controlType)); File.SetAccessControl(filePath, fSecurity); } static void SetRule(string filePath, string account, FileSystemRights rights, AccessControlType controlType) { FileSecurity fSecurity = File.GetAccessControl(filePath); fSecurity.ResetAccessRule(new FileSystemAccessRule(account, rights, controlType)); File.SetAccessControl(filePath, fSecurity); }
}
</source>
File.WriteAllLines(String fileName, String[] lines)
<source lang="csharp"> using System; using System.Collections.Generic; using System.Text; using System.IO; class MainClass {
static void Main(string[] args) { string[] lines = new string[10]; for (int i = 0; i < 10; i++) { lines[i] = String.Format( "This is line number {0}", i); } File.WriteAllLines(@"c:\test.txt", lines); foreach (string line in File.ReadAllLines(@"c:\test.txt")) { Console.WriteLine(line); } }
}
</source>