110,534
社区成员
发帖
与我相关
我的任务
分享
foldPath = dialog.SelectedPath;
this.label4.Text = foldPath;
DirectoryInfo TheFolder = new DirectoryInfo(foldPath);
fileName = Path.GetFileName(dialog.SelectedPath);//获取当前打开文件夹名称
foreach (FileInfo NextFile in TheFolder.GetFiles())
{
this.listBox1.Items.Add(NextFile.Name);
string tempStr = File.ReadAllText(NextFile.FullName, Encoding.GetEncoding("GB2312"));//读取txt内容
this.richTextBox1.Text = tempStr;
}
DirectoryInfo folder = new DirectoryInfo(@"D:\");
if (!folder.Exists)
throw new DirectoryNotFoundException("该文件不存在");
//遍历该文件夹下面的子文件夹
Console.WriteLine("DirectoryInfo");
foreach (DirectoryInfo item in folder.GetDirectories())
Console.WriteLine(item.Name);
Console.WriteLine();
Console.WriteLine("FileInfo");
//遍历该文件夹下面的文件
foreach (FileInfo item in folder.GetFiles())
{
Console.WriteLine(item.Name);
Console.WriteLine(File.ReadAllText(item.FullName, Encoding.GetEncoding("GB2312")));
}
Console.Read();
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Collections;
namespace ConsoleApplication6
{
class GetFilePath
{
private ArrayList dirs;
/// <summary>
/// 构造函数
/// </summary>
public GetFilePath()
{
dirs = new ArrayList();
}
/// <summary>
/// 获取所有文件
/// </summary>
/// <param name="rootPath">文件夹路径</param>
/// <returns>所有文件路径集合</returns>
public ArrayList GetAllFileName(string rootPath)
{
dirs.Add(rootPath);
GetDirs(rootPath);
object[] allDir = dirs.ToArray();
ArrayList list = new ArrayList();
foreach (object o in allDir)
{
list.AddRange(GetFileName(o.ToString()));
}
return list;
}
/// <summary>
/// 获取文件名
/// </summary>
/// <param name="dirPath">文件夹路径</param>
/// <returns>文件路径集合</returns>
private ArrayList GetFileName(string dirPath)
{
ArrayList list = new ArrayList();
if (Directory.Exists(dirPath))
{
list.AddRange(Directory.GetFiles(dirPath));
}
return list;
}
/// <summary>
/// 获取所有文件夹路径
/// </summary>
/// <param name="dirPath">文件夹路径</param>
private void GetDirs(string dirPath)
{
if (Directory.GetDirectories(dirPath).Length > 0)
{
foreach (string path in Directory.GetDirectories(dirPath))
{
dirs.Add(path);
GetDirs(path);
}
}
}
}
}
private void ScanAllFolder(string pathName)
{
try
{
if (!Directory.Exists(pathName))
{
return;
}
DirectoryInfo processDirectory = new DirectoryInfo(pathName);
FileSystemInfo[] fileSystemInfos = processDirectory.GetFileSystemInfos();
foreach (FileSystemInfo fileSystemInfo in fileSystemInfos)
{
if (fileSystemInfo is DirectoryInfo &&
fileSystemInfo.Attributes != FileAttributes.Hidden &&
fileSystemInfo.Attributes != FileAttributes.System)
{
DirectoryInfo directoryInfo = (DirectoryInfo)fileSystemInfo;
this.ScanAllFolder(directoryInfo.FullName);
}
else if (fileSystemInfo is FileInfo &&
fileSystemInfo.Attributes != FileAttributes.Hidden &&
fileSystemInfo.Attributes != FileAttributes.System)
{
FileInfo fileInfo = (FileInfo)fileSystemInfo;
//处理单个文件
}
}
}
catch (Exception ex)
{
//Debug.Assert(false, ex.Message);
}
}