c#读取一个文件夹中的文件?高分送.不够再给100分.

signalgao 2004-05-08 11:28:07
读出一个文件夹中的所有文件(文件数从0个到N多不定).没有文件返回假.
都是ascii码文件.
读每个文件的前一部分至出现第一个 /s./s/r 为止.
读出来放后放至string[] filetsr中.
请高手作答 .
谢谢!
...全文
894 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangsaokui 2004-05-08
  • 打赏
  • 举报
回复
挣分不容易,今天还没开张,你的分有多的话就多给点吧!
wangsaokui 2004-05-08
  • 打赏
  • 举报
回复
试试看,没来得及调试,有问题自己改改吧!

using System;
using System.IO;

class Test
{
public static void Main()
{
try
{
// Only get files that begin with the letter "c."
int i=0;
string[] dirs = Directory.GetFiles(@"c:\", "c*");
Console.WriteLine("The number of files starting with c is {0}.", dirs.Length);
string[] filetsr=new String[dirs.Length];
foreach (string dir in dirs)
{
FileStream fs = new FileStream(dir,FileMode.Open);
byte[] readBuf=new byte[fs.Length];
syncF.Read(readBuf,0,fs.Length);

data = Encoding.ASCII.GetString(readBuf);
if (data.IndexOf("/s./s/r") > -1)
{
i++;
filestr[i]=Microsoft.Basic.Left(data.IndexOf("/s./s/r") -1)
}

}
}
catch (Exception e)
{
Console.WriteLine("The process failed: {0}", e.ToString());
}
}
}
lihao9806 2004-05-08
  • 打赏
  • 举报
回复
strFiles = Directory.GetFiles(@"c:\Import");
foreach(string strFile in strFiles)
{
File.Move(strFile,strFile.Replace("Import","Rubbish_Files"));
上面这句换为你的处理。
}
gabriel1 2004-05-08
  • 打赏
  • 举报
回复
用foreach语句读取
signalgao 2004-05-08
  • 打赏
  • 举报
回复
顶呀.
一头雾水.
lwjlwj 2004-05-08
  • 打赏
  • 举报
回复
DirectoryInfo 下GetFiles()属性,用foreach遍历出来即可
wangsaokui 2004-05-08
  • 打赏
  • 举报
回复
fs.Read(readBuf,0,(Convert.ToInt32(fs.Length)));
楼主注意需要重新生成项目。
wangsaokui 2004-05-08
  • 打赏
  • 举报
回复
using System;
using System.IO;
using Microsoft.Baisc;
using System.Text;
signalgao 2004-05-08
  • 打赏
  • 举报
回复
F:\c#\testdir\Class1.cs(19): 与“System.IO.Stream.Read(byte[], int, int)”最匹配的重载方法具有一些无效参数
F:\c#\testdir\Class1.cs(21): 找不到类型或命名空间名称“Encoding”(是否缺少 using 指令或程序集引用?)
F:\c#\testdir\Class1.cs(25): 类型或命名空间名称“Basic”在类或命名空间“Microsoft”中不存在(是否缺少程序集引用?)
你那里有.NET的话你调试一下.

fs.Read(readBuf,0,fs.Length);
我改成了. fs.Read(readBuf,0,Convert.ToInt64(fs.Length));还是不行.
麻烦你看一下.


CMIC 2004-05-08
  • 打赏
  • 举报
回复
我也没测试,你自己是吧
private object ReadFiles(string pPath)
{
System.IO.DirectoryInfo mDir=new System.IO.DirectoryInfo(pPath);
if(mDir.GetFiles().Length==0)
{

}
else
{
System.Collections.ArrayList mList=new System.Collections.ArrayList();
foreach(FileInfo mFile in mDir.GetFiles())
{
FileStream mFileStm=mFile.Open(FileMode.Open);
int mFileLen=(int)mFileStm.Length;
byte[] mBytes=new byte[mFileLen];
mFileStm.Read(mBytes,0,mFileLen);
mFileStm.Close();

string mFileString=System.Text.Encoding.ASCII.GetString(mBytes);
int mIntIndex=mFileString.IndexOf(@"/s./s/r");
if(mIntIndex!=-1)
{
mList.Add(mFileString.Substring(0,mIntIndex));
}
}
if(mList.Count!=0)
{
string[] filetsr=new string[mList.Count];
mList.CopyTo(filetsr);
return filetsr;
}
}
return false;
}
wangsaokui 2004-05-08
  • 打赏
  • 举报
回复
using System;
using System.IO;

class Test
{
public static void Main()
{
try
{
// Only get files that begin with the letter "c."
int i=0;
string[] dirs = Directory.GetFiles(@"c:\", "c*");
Console.WriteLine("The number of files starting with c is {0}.", dirs.Length);
string[] filetsr=new String[dirs.Length];
foreach (string dir in dirs)
{
FileStream fs = new FileStream(dir,FileMode.Open);
byte[] readBuf=new byte[fs.Length];
fs.Read(readBuf,0,fs.Length);

string data = Encoding.ASCII.GetString(readBuf);
if (data.IndexOf("/s./s/r") > -1)
{
i++;
filestr[i]=Microsoft.Basic.Left(data.IndexOf("/s./s/r") -1)
}

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

^_^ 不好意思,还是你观察仔细。
signalgao 2004-05-08
  • 打赏
  • 举报
回复
syncF 和data 都没定义.
楼上的写仔细一点行不?

谢谢
内容概要:本文深入解析了计算机组成原理的核心知识点,涵盖CPU结构、指令集架构(CISC与RISC)、流水线技术、Cache映射机制、虚拟存储器、多级存储体系、RAID技术、总线系统、I/O编址方式以及系统可靠性评价等关键内容。详细阐述了CPU运算器与控制器的功能与工作原理,对比析了CISC与RISC架构的优劣及发展趋势,探讨了流水线技术的原理、冲突类型与优化方法,并对Cache的直接映射、全相联映射和组相联映射机制进行了剖析。同时介绍了虚拟存储器的页式管理、地址转换与缺页处理机制,析了多级存储体系的层次结构与一致性问题,系统讲解了RAID技术的级别、冗余机制与应用场景,梳理了总线技术的类、仲裁机制与典型标准,并讨论了I/O编址方式的选择与优化策略,最后深入解读了MTBF/MTTR等系统可靠性核心指标与提升方法。; 适合人群:具备一定计算机基础知识的本科生、研究生及从事计算机体系结构、操作系统、嵌入式系统等相关领域的研发人员和技术爱好者。; 使用场景及目标:①深入理解CPU内部工作机制及现代处理器设计原理;②掌握存储系统(Cache、虚拟内存、RAID)的核心技术与性能优化方法;③理解总线与I/O系统的架构设计与数据传输机制;④构建完整的计算机系统可靠性析与评估能力; 阅读建议:本报告内容专业性强、覆盖面广,建议结合实际硬件架构和操作系统原理进行对照学习,重点理解各技术之间的关联性,如流水线与指令集设计的关系、Cache与虚拟存储的协同机制、RAID与存储可靠性的联系等,以形成系统化的知识体系。
内容概要:本文研究了基于改进粒子群算法(PSO)的无人机路径规划方法,并将其与传统的遗传算法(GA)和标准粒子群算法进行了对比析。研究在复杂地形环境下进行三维路径规划,通过Matlab实现算法仿真,旨在寻找一条从起点到终点的安全、高效飞行路径,同时避开障碍物并优化飞行成本。改进的粒子群算法通过引入新的策略增强了全局搜索能力和收敛速度,有效克服了传统算法易陷入局部最优和收敛慢的问题。文详细阐述了三种算法的原理、实现步骤及适应度函数的设计,目标函数综合考虑了路径长度、飞行高度、威胁规避和转弯角度等因素,以实现最低成本的路径规划。仿真结果表明,所提出的改进PSO算法在路径优化质量、算法稳定性和收敛速度方面均优于对比算法,能够为无人机在复杂环境下的自主飞行提供更优的决策支持。; 适合人群:具备一定算法基础和Matlab编程能力的研究生、科研人员及从事无人机、智能优化算法等领域工作的工程师。; 使用场景及目标:① 学习和掌握粒子群算法、遗传算法等智能优化算法的基本原理及其在路径规划的具体应用;② 对比不同优化算法在解决复杂三维路径规划问题上的性能差异;③ 获取基于Matlab的无人机路径规划完整代码实现,用于科研复现、二次开发或教学演示。; 阅读建议:在阅读时应重点关注改进粒子群算法的创新点及其与标准算法的性能对比数据,结合Matlab代码理解算法的具体实现流程。建议读者自行运行代码,调整算法参数和环境设置,观察不同条件下路径规划的效果,以加深对算法性能的理解。

111,130

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧