2011-08-23 4 views
1

etxt 파일을 다른 폴더로 이동하는 콘솔 응용 프로그램 C#을 작성하려고합니다. 폴더 AAtxt 파일을 다른 폴더로 이동하는 방법은 무엇입니까?

string source = "C:\\A\\ResultClassA.txt"; 
File.Move(Source, "C:\\AA"); 

하지만 항상이 오류 메시지를 제공하는 기능 그냥 복사 폴더 A로부터 특정 .txt 인 파일 : 경로에

액세스가 거부되었습니다.

문제 해결 팁 : 이 리소스에 액세스 할 수있는 충분한 권한이 있는지 확인하십시오. 파일에 액세스하려고 시도하는 경우 파일이 ReadOnly가 아닌지 확인하십시오. 이 예외에 대한 일반적인 도움을 얻으십시오.

"File.move"코드가 실행되기 전에 정말로 내 폴더 A와 폴더 B를 "읽기 전용"속성으로 설정해야합니까? 성공 후 이동 만 읽기로 설정 했습니까?

감사합니다. 영웅으로.

+0

폴더'C는 않습니다에 대한 here를 참조 존재해야? File.Move는 파일을 옮기고 디렉토리를 생성하지 않습니다. 'source' 파일이 사용 중이거나 사용 불 가능한 경우에도 실패합니다. – Jodrell

+1

코드 주위에 try/catch를 사용하면 예외에 대한 자세한 내용을 알 수 있으며 예에서 두 번째 줄의 소스는 소문자 여야합니다. –

답변

1

영웅, 파일 이름에서 폴더 이름으로 이동하면 C:\AA 폴더 안에 확장명이있는 파일 이름을 지정하십시오.

이미 C에 AA가 있습니까? \ AA` 존재합니다

+0

그것은 내 C 드라이브에 이미 – Hero

4

당신은 전체 경로를 지정하고 확인 경로 C:\AA

string source = "C:\\A\\ResultClassA.txt"; 
File.Move(Source, "C:\\AA\\ResultClassA.txt"); 

좋은 샘플

using System; 
using System.IO; 
class Test 
{ 
    public static void Main() 
    { 
     string path = @"c:\temp\MyTest.txt"; 
     string path2 = @"c:\temp2\MyTest.txt"; 
     try 
     { 
      if (!File.Exists(path)) 
      { 
       // This statement ensures that the file is created, 
       // but the handle is not kept. 
       using (FileStream fs = File.Create(path)) {} 
      } 

      // Ensure that the target does not exist. 
      if (File.Exists(path2)) 
      File.Delete(path2); 

      // Move the file. 
      File.Move(path, path2); 
      Console.WriteLine("{0} was moved to {1}.", path, path2); 

      // See if the original exists now. 
      if (File.Exists(path)) 
      { 
       Console.WriteLine("The original file still exists, which is unexpected."); 
      } 
      else 
      { 
       Console.WriteLine("The original file no longer exists, which is expected."); 
      }   

     } 
     catch (Exception e) 
     { 
      Console.WriteLine("The process failed: {0}", e.ToString()); 
     } 
    } 
} 
+0

wor .. 나는 shoud뿐만 아니라 파일 이름을 넣어 .. 덕분에 많이 – Hero

+0

롤 오신 것을 환영합니다. 그것이 당신을 위해 작동하는 경우 답변 중 하나를 틱하는 것을 잊지 마세요. –

관련 문제