下了n个了,要么只能按文件转,不能转整个目录的;要么不能循环下级目录的;要么偏偏不能转GBK的;要么干脆啥都不干,直接把源文件给变成空白文件;还有的干脆看不明白咋用的,像是火星来的程序员写的。
大家伙帮帮忙,一定要自己亲自用过的,不要在网上搜的。先行谢过了。
8 个解决方案
#1
http://download.csdn.net/detail/okjxdn/2025076
#2
你自己写个方法,从某个文件路径得到下面的所有目录及文件。
然后调用转码的方法不就行了。
然后调用转码的方法不就行了。
#3
大牛
#4
public class GetFileInfo
{
DataTable dt;
public UpdateFile()
{
dt = new DataTable();
dt.Columns.Add("directory");
dt.Columns.Add("filename");
dt.Columns.Add("filelength");
dt.Columns.Add("addtime");
}
/// <summary>
/// 通过路径获取该路径下所有文件
/// </summary>
/// <param name="path"></param>
/// <returns></returns>
public DataTable GetAllFiles(string path)
{
DirectoryInfo di = new DirectoryInfo(path);
//获取该目录下的所有文件
FileInfo[] fiArray = di.GetFiles();
for (int i = 0; i < fiArray.Length; i++)
{
string[] temp = { fiArray[i].DirectoryName, fiArray[i].Name, fiArray[i].Length.ToString(), fiArray[i].LastWriteTime.ToString() };
dt.Rows.Add(temp);
}
//获取该目录下的所有子目录
DirectoryInfo[] diArray = di.GetDirectories();
for (int j = 0; j < diArray.Length; j++)
{
GetAllFiles(diArray[j].FullName);
}
return dt;
}
}
{
DataTable dt;
public UpdateFile()
{
dt = new DataTable();
dt.Columns.Add("directory");
dt.Columns.Add("filename");
dt.Columns.Add("filelength");
dt.Columns.Add("addtime");
}
/// <summary>
/// 通过路径获取该路径下所有文件
/// </summary>
/// <param name="path"></param>
/// <returns></returns>
public DataTable GetAllFiles(string path)
{
DirectoryInfo di = new DirectoryInfo(path);
//获取该目录下的所有文件
FileInfo[] fiArray = di.GetFiles();
for (int i = 0; i < fiArray.Length; i++)
{
string[] temp = { fiArray[i].DirectoryName, fiArray[i].Name, fiArray[i].Length.ToString(), fiArray[i].LastWriteTime.ToString() };
dt.Rows.Add(temp);
}
//获取该目录下的所有子目录
DirectoryInfo[] diArray = di.GetDirectories();
for (int j = 0; j < diArray.Length; j++)
{
GetAllFiles(diArray[j].FullName);
}
return dt;
}
}
#5
以前给同事写过一个.
#6
楼上在诱奸
#7
UTF8是老外用的,用汉字多的应该用Unicode
#8
#1
http://download.csdn.net/detail/okjxdn/2025076
#2
你自己写个方法,从某个文件路径得到下面的所有目录及文件。
然后调用转码的方法不就行了。
然后调用转码的方法不就行了。
#3
大牛
#4
public class GetFileInfo
{
DataTable dt;
public UpdateFile()
{
dt = new DataTable();
dt.Columns.Add("directory");
dt.Columns.Add("filename");
dt.Columns.Add("filelength");
dt.Columns.Add("addtime");
}
/// <summary>
/// 通过路径获取该路径下所有文件
/// </summary>
/// <param name="path"></param>
/// <returns></returns>
public DataTable GetAllFiles(string path)
{
DirectoryInfo di = new DirectoryInfo(path);
//获取该目录下的所有文件
FileInfo[] fiArray = di.GetFiles();
for (int i = 0; i < fiArray.Length; i++)
{
string[] temp = { fiArray[i].DirectoryName, fiArray[i].Name, fiArray[i].Length.ToString(), fiArray[i].LastWriteTime.ToString() };
dt.Rows.Add(temp);
}
//获取该目录下的所有子目录
DirectoryInfo[] diArray = di.GetDirectories();
for (int j = 0; j < diArray.Length; j++)
{
GetAllFiles(diArray[j].FullName);
}
return dt;
}
}
{
DataTable dt;
public UpdateFile()
{
dt = new DataTable();
dt.Columns.Add("directory");
dt.Columns.Add("filename");
dt.Columns.Add("filelength");
dt.Columns.Add("addtime");
}
/// <summary>
/// 通过路径获取该路径下所有文件
/// </summary>
/// <param name="path"></param>
/// <returns></returns>
public DataTable GetAllFiles(string path)
{
DirectoryInfo di = new DirectoryInfo(path);
//获取该目录下的所有文件
FileInfo[] fiArray = di.GetFiles();
for (int i = 0; i < fiArray.Length; i++)
{
string[] temp = { fiArray[i].DirectoryName, fiArray[i].Name, fiArray[i].Length.ToString(), fiArray[i].LastWriteTime.ToString() };
dt.Rows.Add(temp);
}
//获取该目录下的所有子目录
DirectoryInfo[] diArray = di.GetDirectories();
for (int j = 0; j < diArray.Length; j++)
{
GetAllFiles(diArray[j].FullName);
}
return dt;
}
}
#5
以前给同事写过一个.
#6
楼上在诱奸
#7
UTF8是老外用的,用汉字多的应该用Unicode