programing

특정 폴더 안의 모든 파일을 읽는 방법

goodsources 2023. 10. 13. 22:05
반응형

특정 폴더 안의 모든 파일을 읽는 방법

c# .net의 특정 폴더 안에 있는 모든 xml 파일을 읽고 싶습니다.

XDocument doc2 = XDocument.Load((PG.SMNR.XMLDataSourceUtil.GetXMLFilePath(Locale, "Products/category/product.xml")));

나는 카테고리 폴더에 여러개의 제품을 가지고 있습니다.want loop 폴더와 모든 제품 xml 파일 이름을 가져와야 합니다.

XDocument doc2 = XDocument.Load((PG.SMNR.XMLDataSourceUtil.GetXMLFilePath(Locale, "Products/category/x1.xml")));
using System.IO;
...
foreach (string file in Directory.EnumerateFiles(folderPath, "*.xml"))
{
    string contents = File.ReadAllText(file);
}

위에서는 a를 사용합니다.NET 4.0 기능, 이전 버전에서는 대체EnumerateFiles와 함께GetFiles) 또는 교체합니다.File.ReadAllText당신이 선호하는 xml 파일을 읽는 방법으로 - 아마도.XDocument,XmlDocument혹은XmlReader.

using System.IO;

DirectoryInfo di = new DirectoryInfo(folder);
FileInfo[] files = di.GetFiles("*.xml");
using System.IO;

//...

  string[] files;

  if (Directory.Exists(Path)) {
    files = Directory.GetFiles(Path, @"*.xml", SearchOption.TopDirectoryOnly);
    //...

다음 방법을 사용할 수 있습니다.

FileInfo[] files = DirectoryInfo.GetFiles("*.xml");

한 폴더에 있는 모든 텍스트 파일을 병합하여 다른 폴더에 복사하려는 경우 이 작업을 수행하여 다음을 달성할 수 있습니다.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;

namespace HowToCopyTextFiles
{
  class Program
  {
    static void Main(string[] args)
    {
      string mydocpath=Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);     
      StringBuilder sb = new StringBuilder();
      foreach (string txtName in Directory.GetFiles(@"D:\Links","*.txt"))
      {
        using (StreamReader sr = new StreamReader(txtName))
        {
          sb.AppendLine(txtName.ToString());
          sb.AppendLine("= = = = = =");
          sb.Append(sr.ReadToEnd());
          sb.AppendLine();
          sb.AppendLine();   
        }
      }
      using (StreamWriter outfile=new StreamWriter(mydocpath + @"\AllTxtFiles.txt"))
      {    
        outfile.Write(sb.ToString());
      }   
    }
  }
}

이거 해봐요. 나한테 효과가 있어요.

구문은Directory.GetFiles(string path, string searchPattern);

var filePath = Server.MapPath("~/App_Data/");
string[] filePaths = Directory.GetFiles(@filePath, "*.*");

이 코드는 안에 있는 모든 파일을 반환합니다.App_Data폴더.

두 번째 매개 변수 .는 파일 확장명이 있는 검색 패턴을 나타냅니다. 여기서 첫 번째 *는 파일 이름에 대한 것이고 두 번째 *는 파일의 형식 또는 파일 확장명(*.png - .png 형식의 모든 파일 이름)에 대한 것입니다.

    using System.IO;
    string[] arr=Directory.GetFiles("folderpath","*.Fileextension");
      foreach(string file in arr)
       {

       }

언급URL : https://stackoverflow.com/questions/5840443/how-to-read-all-files-inside-particular-folder

반응형