Tag: 文件

C# – 如何从路径中提取文件名和扩展名?

所以,说我有 string path = “C:\\Program Files\\Program\\File.exe”; 我如何只获得“File.exe”? 我正在考虑拆分(见下文),但我尝试的东西不起作用…… 这是我的代码。 List procs = new List(); //Used to check if designated process is already running foreach (Process prcs in Process.GetProcesses()) procs.Add(prcs.ProcessName); //Add each process to the list foreach (string l in File.ReadAllLines(“MultiStart.txt”)) //Get list of processes (full path) if (!l.StartsWith(“//”)) //Check if it’s commented out if (!procs.Contains(l.Split(‘\\’)[l.Split(‘\\’).Length […]

确定byte 是否是pdf文件

是否有任何方法可以检查byte []是否为pdf而不打开? 我有一些代码来显示byte []列表作为pdf缩略图。 我之前知道所有byte []都是pdf,因为我们过滤了servlet只返回这些。 现在需求已经改变,我需要恢复所有文件类型。 有没有办法检查字节[]是什么,或更具体地确定它是不是,pdf?

C#resx文件错误

我的.resx文件出现了一个奇怪的错误: “无效的Resx文件.ResX输入无效。无法找到ResX读取器和写入器类型名称的有效”resheader“标签.C:\ Documents and Settings \ Users \ My Documents \ Visual Studio 2010 \ Projects \ dock \ WinForms \ Dock \ strings.resx” 我所做的是将现有VS 2010解决方案中的一些文件替换为VS 2008解决方案中的一些旧文件,大多数文件工作正常,但我收到此错误,我不知道如何修复它。 如果它有所不同, 这是该文件的源代码。 我正在使用.NET WinForms 4.0,如果这很重要的话。

如何以编程方式更改文件的安全属性,以便任何用户都可以删除该文件

我有一个用C#编写的服务器,它使用了模拟。 我想知道如何更改文件的安全属性,以便任何用户都可以删除它。 我的服务器模拟用户,然后创建一个临时文件。 稍后我需要删除该文件,但此时,我不再冒充创建该文件的用户,并且在尝试删除该文件时会生成exception。 我的假设是,在我创建文件时,我应该能够更改安全属性以允许任何用户删除该文件。 我怎样才能做到这一点(C#首选,但p / invoke也可以)。 我目前正在使用.NET 1.1,因此可以在1.1中实现一种方法。

枚举文件抛出exception

我试图使用下面的代码枚举我的计算机上的文件,但每次遇到我没有读取权限的文件或目录时都会引发exception。 抛出exception后有什么办法可以继续搜索吗? 我知道有些人有类似的问题,除了单独检查每个文件/文件夹之外还有其他方法吗? try { string[] files = Directory.GetFiles(@”C:\”, “*.*”,SearchOption.AllDirectories); foreach (string file in files) { Console.WriteLine(file); } } catch { } 谢谢你的帮助,因为这让我很生气!

如何在c#中截断文件?

我正在使用Trace.Writeln()函数将C#中的程序执行的操作写入文件。 但是文件变得太大了。 如何在文件增长到1MB时截断它? TextWriterTraceListener traceListener = new TextWriterTraceListener(File.AppendText(“audit.txt”)); Trace.Listeners.Add(traceListener); Trace.AutoFlush = true; 应该添加到上面的块中

处理大型位图(最高3GB)

我正在做一些大学项目并且遇到内存问题。 我在硬盘上加载一个大约1,5GB的位图,代码如下: Bitmap bmp = new Bitmap(pathToFile); 问题是新创建的Bitmap对象使用大约3,5GB的RAM,这是我无法理解的(这真的是大包装:E)。 我需要到像素数组,并且使用Bitmap类非常有用(我稍后使用LockBits()方法,并且每个字节处理数组字节)但在这种情况下它是完全阻塞。 所以这是我的问题: 是否有任何简单的方法来提取像素arrays而不需要额外的2gb? 我正在使用c#来提取所需的数组,后来用c ++处理 – 也许我可以用c ++提取所有需要的数据(但转换问题出现在这里 – 我专注于24bgr格式)? PS:我需要将整个位图保留在内存中,因此将其拆分为部分并不是解决方案。 PS2:只是澄清一些问题:我知道文件扩展名和文件格式之间的区别。 加载的文件是未压缩的位图,每个像素大小为3个字节~1.42GB(16k x 32k像素),那么为什么Bitmap对象的大两倍多呢? 任何解压缩问题和转换为其他格式都没有发生。

如何将C#.NET TextReader光标重置回起点?

我有一个方法,它接受StringReader实例(从剪贴板读取)或StreamReader实例(从文件读取),并且目前,将一个实例转换为TextReader实例。 我需要它来“预读”一些源输入,然后将光标重置回到开始。 我不一定有原始文件名。 我该怎么做? 提到了System.IO.Stream的Seek方法,但是这并没有在TextReader实现,尽管它在StreamReader通过Basestream属性实现。 但是StringReader没有BaseStream属性

“移动不会跨卷” – 为什么? 以及如何克服?

当源文件和目标文件位于不同的分区中时,为什么File.Move(sourceFileName, destFileName)工作正常,但Directory.Move(sourceDirName, destDirName)却没有? 它抛出 System.IO.IOException:“源和目标路径必须具有相同的根。移动将无法跨卷工作。” 我甚至尝试创建一个DirectoryInfo实例并使用MoveTo(destDirName)方法,但没有成功。 我错过了什么吗? 我自己真的必须实现“移动”function吗? (我要移动的目录非常大btw)。

修改文本文件中特定行的内容

我是c#的新手,目前正在处理项目,所以我需要打开现有的文本文件并编辑特定行的内容(即32),但我失败了! 有帮助吗?