Tag: 文件

使用filestream从根目录文件夹中读取文件

我的文件夹中有两个图像文件,我必须在我的程序中调用它。 我用过: AppDomain.curentDomain.baseDirectory + “Path and file name”; 但这进入了我不想要的bin目录; 我想从根目录中读取文件夹,其中我的文件夹名称作为资源我已将文件保存在那里并调用图像所以请问那是什么代码? 如何从Windows窗体应用程序中的根目录中读取?

使用c#在recyclebin中列出文件名而不使用任何外部文件

我想有一个函数,它使用c#代码检索回收站中的文件名(在win 7上)。 框架似乎没有任何东西可以实现这一点。 Directory.Getfiles()不会对它起作用,不是吗? 我发现自己是一个使用“windows shell32自动化”的代码,但这需要提供interop.shell32.dll,必须与我的应用程序一起重新分发。 由于我的应用程序应该独立工作(因为用户计算机上存在很长的Net Framework 2),因此该解决方案并不理想。 这个解决方案似乎对我来说也不可靠,因为它使用COM Automation并且一些引用可能失败或者调用Namespace(10)可能会失败。 我甚至不确定命名空间(10)是否始终是回收站的正确文件夹。 这段代码就是我在这件事上为C#找到的。 我发现了一个Delphi和代码项目的另一个实现,但如果我在我的C#项目中复制该代码,它实际上都是红色下划线并且不会编译。 我不确定如何更正此代码以使其在C#中使用。 在pinvoke.net上我找不到我必须使用的Windows函数的代码(SHQueryRecycleBin),但也许我必须使用更多的函数来从回收站获取文件列表。 有没有人见过代码或任何想法?

为什么我在尝试从正在写入的文件中读取时遇到未处理的exception:System.IO.IOException?

我有两个C#应用程序,一个是逐行读取文件(文件A)并将其内容写入另一个文件(文件B)。 第二个应用程序使用文件B的FileSystemWatcher查看它何时更新,并报告差异是程序启动时和文件更改之间的行号。 这就是我现在要做的所有事情,最终我想要读取上次读取文件和当前读取之间的界限,但直到我可以得到保持的线差。 我对应用程序1的代码是; static void Main(string[] args) { String line; StreamReader sr = new StreamReader(“f:\\watch\\input.txt”); FileStream fs = new FileStream(“f:\\watch\\Chat.log”, FileMode.Create, FileAccess.Write, FileShare.ReadWrite); StreamWriter sw = new StreamWriter(fs); while ((line = sr.ReadLine()) != null) { sw.WriteLine(line); Thread.Sleep(200); Console.WriteLine(line); sw.Flush(); } sw.Close(); sr.Close(); } 我对应用程序2的代码是; public static int lines = 0; public static void Main() […]

可以在C#中打开的最大文件数是否有限制?

我正在制作一个应用程序,它需要同时打开至少676个文件到最多1400个文件。 我将使用StreamWriter类写入这些文件并使用StreamReader Class读取数据。 那么,对于可以同时打开以便在C#中读取或写入的文件的最大限制,就像VC ++一样,如下面的链接所述。 Windows中打开文件的数量是否有限制 。

只读一次文件的下一行

我有一个应用程序从文本文件中读取信息,然后对它们进行分类并将它们放到数据库中。 对于一个类别,我需要检查当前行之后的行并查找某个关键字? 我如何阅读这一行? 这个应该在streamreader已经打开当前行时发生…. 我在VS2010上使用c#。 编辑 : 下面的所有代码都是一段时间(!sReader.EndOfStream)循环 string line = sReader.ReadLine(); //Note: this is used way above and lots of things are done before we come to this loop for (int i = 0; i < filter_length; i++) { if (searchpattern_queries[i].IsMatch(line) == true) { logmessagtype = selected_queries[i]; //*Here i need to add a if […]

是否可以创建一个base64字符串,其中包含多页tiff文件的所有帧?

使用已知的转换方法将多页tiff文件转换为base64字符串似乎只包含一个页面。 我从本地磁盘获取多页tiff文件: Image multiPageImage = Image.FromFile(fileName); 将其转换为base64字符串: base64string = ImageToBase64(multiPageImage, ImageFormat.Tiff); public static string ImageToBase64(Image image, ImageFormat format) { using (MemoryStream ms = new MemoryStream()) { // Convert Image to byte[] image.Save(ms, format); byte[] imageBytes = ms.ToArray(); // Convert byte[] to Base64 String string base64String = Convert.ToBase64String(imageBytes); image.Dispose(); return base64String; } } 然后将base64转换为映像并将其保存在本地磁盘上以控制结果: public static […]

C#:如何使用SHOpenFolderAndSelectItems

有人可以举例说明如何使用来自C#的shell函数SHOpenFolderAndSelectItems吗? 我不太懂得如何使用这些函数而无法在pinvoke.net上找到它… = / 说我有三个文件叫 X:\Pictures\a.jpg X:\Pictures\s.jpg X:\Pictures\d.jpg 然后我想打开X:\Pictures文件夹,选择a.jpg , s.jpg和d.jpg 。

C#中最快的方法是从文件中读取字节块并转换为float

转换/转换字节数组的C#leanguage需要一个快速的方法,将2字节的一个short(int16)值编码为float表示,尽可能快。 性能瓶颈是方法: samples[sample] = (float)binraryReader.readInt16(); (巨大的IO调用,所以我不得不转换为块读取) 基本上我有包含声音样本块(~100-600 mb)类型的短文件,然后,因为我只能阻止读取字节集,我需要从每对字节构造短路然后将该短路转换为浮点数表示我需要将样本存储为浮点数。 我当前的代码看起来像这样(比上面的方法提高2倍的性能,但仍然很长): float[] samples = new float[_samplesPerSplit]; byte[] data = new byte[_samplesPerSplit * 2]; for (int c = 0; c < numberOfChunks; c += 1) { br.Read(data, 0, _samplesPerSplit * 2); fixed (byte* bytePtr = data) { fixed (float* floatPtr = samples) { byte* rPos = bytePtr; float* […]

为什么这段代码会锁定我的文件?

我已经缩小到这个方法,但我不明白为什么它锁定文件。 我相信你可以用类似的东西 using( something) { //do stuff here } 但我不确定A)是否会解决问题,或者B)如果确实如此,那就是正确的方法。 有任何想法吗? [DllImport(“user32.dll”, CharSet = CharSet.Auto)]private static extern Int32 SystemParametersInfo(UInt32 action, UInt32 uParam, String vParam, UInt32 winIni); private static readonly UInt32 SPI_SETDESKWALLPAPER = 0x14; private static readonly UInt32 SPIF_UPDATEINIFILE = 0x01; private static readonly UInt32 SPIF_SENDWININICHANGE = 0x02; private void SetWallpaper(string path) { try { Image […]

C# – 将“.txt”文件保存到项目根目录

我写了一些代码,要求我保存文本文件。 但是,我需要将它保存到我的项目根目录,这样任何人都可以访问它,而不仅仅是我。 这是有问题的方法: private void saveFileToolStripMenuItem_Click(object sender, EventArgs e) { try { string fileName = Microsoft.VisualBasic.Interaction.InputBox(“Please enter a save file name.”, “Save Game”); if (fileName.Equals(“”)) { MessageBox.Show(“Please enter a valid save file name.”); } else { fileName = String.Concat(fileName, “.gls”); MessageBox.Show(“Saving to ” + fileName); System.IO.File.WriteAllText(saveScene.ToString(), AppDomain.CurrentDomain.BaseDirectory + @”\” + fileName); } } catch (Exception […]