파일 및 디렉터리를 조작하는 방법을 보여주는 C# 샘플은 많지만 공백이없는 폴더 경로는 필연적으로 사용됩니다. 현실 세계에서는 공백이 포함 된 이름의 폴더에서 파일을 처리 할 수 있어야합니다. 아래의 코드를 작성하여 문제를 어떻게 해결했는지 보여줍니다. 그러나 그것은 매우 우아하지 않은 것 같아요 그리고 누군가가 더 좋은 방법을 가지고 있는지 궁금해.이름에 공백이 포함 된 폴더에 C#이있는 파일 처리
class Program
{
static void Main(string[] args)
{
var dirPath = @args[0] + "\\";
string[] myFiles = Directory.GetFiles(dirPath, "*txt");
foreach (var oldFile in myFiles)
{
string newFile = dirPath + "New " + Path.GetFileName(oldFile);
File.Move(oldFile, newFile);
}
Console.ReadKey();
}
}
감사합니다, 나이젤 Ainscoe
사용 Path.Combine() 대신 백 슬래시와 함께 자신을 다루는 ... –
내가 뭔가를 놓치고 있습니까? 모든 System.IO 클래스는 파일과 디렉토리를 공백으로 처리합니다. 기술적으로도 DOS조차도 파일 시스템 측면에서 특정 명령 줄 도구가 공백을 올바르게 구문 분석하지 못했을뿐입니다. – Aaronaught
Path.Combine은 필수적입니다. 슬래시를 직접 시도하면 공백이있는 파일을 시도 할 때까지는 오류가 발생합니다. – stuartdotnet