C#에서 동시에 파일 읽기 및 쓰기
파일 작업을 할 때 읽기와 쓰기를 모두 수행해야 하는 경우가 많습니다. 파일. 그러나 다음 코드 조각은 이 작업을 시도하지만 실패합니다.
static void Main(string[] args) { StreamReader sr = new StreamReader(@"C:\words.txt"); StreamWriter sw = new StreamWriter(@"C:\words.txt"); }
이 코드는 읽기 및 쓰기에 별도의 스트림을 사용하기 때문에 실패합니다. 이는 두 스트림을 모두 명시적으로 지정하지 않으면 동일한 파일에 허용되지 않습니다. 작업 및 잠금 관리.
파일을 동시에 읽고 쓰려면 읽기와 쓰기 모두에 열려 있는 단일 스트림을 사용해야 합니다. 이는 FileStream 클래스를 사용하여 수행할 수 있습니다.
FileStream fileStream = new FileStream( @"c:\words.txt", FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None);
FileMode.OpenOrCreate 매개 변수는 파일이 존재하지 않는 경우 열거나 생성해야 함을 지정합니다.
FileAccess.ReadWrite 매개 변수는 다음을 지정합니다. 파일을 읽고 쓰기 위해 열어야 합니다.
FileShare.None 매개 변수는 다른 프로세스에서 읽거나 쓸 수 없도록 지정합니다. 파일이 열려 있는 동안.
FileStream을 생성한 후에는 이를 사용하여 각각 Read() 및 Write() 메서드를 사용하여 파일을 읽고 쓸 수 있습니다.
위 내용은 C#에서 파일을 동시에 읽고 쓸 수 있는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!