Directories and Files
The File
and Directory
classes
contain static methods and properties that encapsulate the operations typically
associated with file I/O, such as copying, moving, deleting, renaming, and
enumerating files and directories.
The actual manipulation of the contents of a file is done with a FileStream
.
The File
class has methods that return a FileStream
,
though you may directly instantiate a FileStream
.
Reading and Writing Files
This example reads in and prints out the first line of a text file specified on the command line:
using System; using System.IO; class FileDumper { static void Main(string[] args) { Stream s = File.OpenRead(args[0]); StreamReader sr = new StreamReader(s); Console.WriteLine(sr.ReadLine()); sr.Close(); } }
Examining Directories
To examine the contents of the filesystem, use the DirectoryInfo
and FileInfo
classes,
both of which are derived from a common FileSystemInfo
base
class. These provide access to most of the filesystem information, which
the following example demonstrates by replicating the results of the dir
command:
using System; using System.IO; using System.Text; class DirCommand { static void Main() { long numFiles=0, numDirs=0, totalBytes=0; string currentDir = Directory.GetCurrentDirectory(); DirectoryInfo currentDirInfo = new DirectoryInfo(currentDir); StringBuilder sb = new StringBuilder(); sb.AppendFormat(" Directory of {0}\n\n", currentDirInfo.FullName); DirectoryInfo rootDirInfo = currentDirInfo.Root; if (rootDirInfo != null) { sb.AppendFormat("{0:dd/MM/yyyy ...
Get C# in a Nutshell now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.