C# Files (I/O) Examples
C# Basic
C# Data Type
C# OOP
C# IO
C# Graphics & UI
C# Advanced
To generate a unique filename in C#, you can use the Path.GetRandomFileName()
method, which generates a random filename with a random extension. Here's an example:
string uniqueFilename = Path.GetRandomFileName();
To remove invalid characters from a filename in C#, you can use the Path.GetInvalidFileNameChars()
method to get an array of invalid characters and then replace them in the filename string. Here's an example:
string invalidChars = new string(Path.GetInvalidFileNameChars()); string cleanedFilename = originalFilename; foreach (char c in invalidChars) { cleanedFilename = cleanedFilename.Replace(c.ToString(), ""); }
To get the MIME type from a filename extension in C#, you can use the MimeTypeMap.GetMimeType()
method from the Microsoft.AspNetCore.StaticFiles
package. Here's an example:
using Microsoft.AspNetCore.StaticFiles; string extension = Path.GetExtension(filename); string mimeType = MimeTypeMap.GetMimeType(extension);
Reading and writing files in C#: Basic file read and write operations in C#.
string filePath = "example.txt"; // Reading from a file string content = File.ReadAllText(filePath); Console.WriteLine("File Content: " + content); // Writing to a file string newText = "New content"; File.WriteAllText(filePath, newText);
File I/O operations in C#: Common file I/O operations in C#.
string sourcePath = "source.txt"; string destinationPath = "destination.txt"; // Copying a file File.Copy(sourcePath, destinationPath, true); // Moving a file File.Move(sourcePath, destinationPath);
Checking file existence in C#: Verifying the existence of a file in C#.
string filePath = "example.txt"; // Checking file existence if (File.Exists(filePath)) { Console.WriteLine("File exists."); }
Creating and deleting files in C#: Creating and deleting files in C#.
string newFilePath = "newfile.txt"; // Creating a new file File.WriteAllText(newFilePath, "Hello, New File!"); // Deleting a file File.Delete(newFilePath);
Working with file paths in C#: Manipulating and working with file paths in C#.
string fileName = "example.txt"; string directoryPath = @"C:\ExampleDirectory\"; // Combine directory and file to get full path string fullPath = Path.Combine(directoryPath, fileName);
Appending text to a file in C#: Appending text to an existing file in C#.
string filePath = "example.txt"; string newText = "Appended Text"; // Appending text to a file File.AppendAllText(filePath, newText);
Reading and writing binary files in C#: Handling binary file read and write operations in C#.
string binaryFilePath = "binaryfile.dat"; byte[] dataToWrite = { 0x41, 0x42, 0x43 }; // Writing binary data to a file File.WriteAllBytes(binaryFilePath, dataToWrite); // Reading binary data from a file byte[] readData = File.ReadAllBytes(binaryFilePath);
Searching for files in a directory with C#: Searching for files in a directory based on specific criteria in C#.
string searchDirectory = @"C:\ExampleDirectory\"; string searchPattern = "*.txt"; // Searching for files in a directory string[] matchingFiles = Directory.GetFiles(searchDirectory, searchPattern);
File permissions and security in C#: Managing file permissions and security in C#.
string filePath = "securefile.txt"; // Granting read and write permissions FileSecurity fileSecurity = new FileSecurity(filePath, AccessControlSections.Access | AccessControlSections.Owner); fileSecurity.AddAccessRule(new FileSystemAccessRule("User", FileSystemRights.Read | FileSystemRights.Write, AccessControlType.Allow)); File.SetAccessControl(filePath, fileSecurity);
Compressing and decompressing files in C#: Compressing and decompressing files in C#.
string sourceFilePath = "file.txt"; string compressedFilePath = "compressed.gz"; // Compressing a file using (FileStream sourceStream = new FileStream(sourceFilePath, FileMode.Open)) using (FileStream compressedStream = File.Create(compressedFilePath)) using (GZipStream compressionStream = new GZipStream(compressedStream, CompressionMode.Compress)) { sourceStream.CopyTo(compressionStream); } // Decompressing a file string decompressedFilePath = "decompressed.txt"; using (FileStream compressedStream = new FileStream(compressedFilePath, FileMode.Open)) using (FileStream decompressedStream = File.Create(decompressedFilePath)) using (GZipStream decompressionStream = new GZipStream(compressedStream, CompressionMode.Decompress)) { decompressionStream.CopyTo(decompressedStream); }
Using FileStream and StreamReader in C#: Utilizing FileStream and StreamReader for efficient file reading in C#.
string filePath = "example.txt"; // Using FileStream and StreamReader using (FileStream fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read)) using (StreamReader reader = new StreamReader(fileStream)) { string content = reader.ReadToEnd(); Console.WriteLine("File Content: " + content); }
Asynchronous file operations in C#: Performing asynchronous file operations in C#.
string filePath = "example.txt"; // Reading file asynchronously string content = await File.ReadAllTextAsync(filePath); Console.WriteLine("File Content: " + content);
File encryption and decryption in C#: Implementing file encryption and decryption in C#.
string filePath = "securefile.txt"; string encryptedFilePath = "encryptedfile.dat"; string decryptedFilePath = "decryptedfile.txt"; // Encrypting a file EncryptionHelper.EncryptFile(filePath, encryptedFilePath, "EncryptionKey"); // Decrypting a file EncryptionHelper.DecryptFile(encryptedFilePath, decryptedFilePath, "EncryptionKey");