Tag: 文件

将文件复制到其他目录

我正在开发一个项目,我希望将一个目录中的某些文件复制到另一个已存在的目录中。 我找不到简单地从一个文件夹复制到另一个文件夹的方法。 我可以找到复制文件到新文件,或目录到新目录。 我现在设置程序的方法是复制文件并将其保留在同一目录中,然后将该副本移动到我想要的目录中。 编辑: 感谢大家。 你的所有答案都有效。 我意识到我做错了什么,当我设置目标路径时,我没有添加文件名。 现在一切正常,感谢超级快速的反应。

使用C#确定谁打开了文件

使用C#如何获取有关打开文件的人的信息? 用户名和机器名就足够了。 如果它很重要我有Windows工作站通过Samba访问Linux文件服务器上的文件。 我需要在工作站上运行的程序中使用此信息。

FileContentResult和FileStreamResult之间的区别

我正在编辑一些代码,有一个方法返回FileContentResult类型。 我从服务获得一个流,所以对我来说,将返回类型更改为FileStreamResult会更方便。 我应该将流转换为数组以返回FileContentResult吗? 或者我可以安全地更改返回类型吗?

将Zip文件转换为byte 和byte 转换为zip文件

我将zip文件转换为byte []并在文本文件中写入。 int BufferSize=65536; private void button1_Click(object sender, EventArgs e) { DialogResult re = openFileDialog1.ShowDialog(); if (re == DialogResult.OK) { string fileName = openFileDialog1.FileName; try { byte[] bytes = File.ReadAllBytes(fileName); File.WriteAllBytes(@”F:\Info.txt”, bytes); } catch (Exception) { } } } 然后我尝试将这些字节转换为zip文件。 但我不能这样做。 我的代码在这里: private void button2_Click(object sender, EventArgs e) { DialogResult re = openFileDialog1.ShowDialog(); if (re […]

C#:将值写入二进制(.bin)文件格式

所以我要说我有以下价值观: HEADER01 48 45 41 44 45 52 30 31 06/17/14 30 36 2F 31 37 2F 31 34 1.0 31 2E 30 0x0000 00 0x0027 27 0x0001 01 0x0001 01 0x0001 01 0x0001 01 0x0028 28 192 C0 168 A8 1 01 1 01 前3个值是STRINGS,应转换为ASCII HEX值,然后写入.bin文件 接下来的7个值是HEX,应该在.bin文件中写入AS-IS 最后4个值是INTEGERS,应该转换为HEX,然后写入.bin文件 OUTPUT(.bin)文件应如下所示: 00000000 48 45 41 44 […]

从C#进入Windows File Copy API

有没有办法从C#挂钩到Windows File Copy API? 我知道这需要非托管代码,但代码示例或启动程序会有所帮助。 我已经看过C ++代码,但它都是希腊语。 更新:我道歉,我应该更清楚我的意图。 我希望实际上将Windows的复制function更改为更严格(例如允许排队,调度,处理重启,暂停等)。 当我说钩子时,我的意思是API挂钩,这样当有人开始复制时,我会获得源和目的地,并且可以根据我的心愿处理它。 我已经读完了以前用来挂钩Mac OS API以做这些事情所以我假设在C ++ WINAPI世界中有一些类型的等价物。

搜索1GB CSV文件

我有一个CSV文件。 每一行都由相同的格式组成,例如/ I,h,q,q,3,A,5,Q,3,[,5,Q,8,c,3,N,3,E,4,F,4,g,4,I,V,9000,0000001-100,G9999999990001800000000000001,G9999999990000001100PDNELKKMMCNELRQNWJ010, , , , , , ,D,Z, 我有一个Dictionary<string, List> 它通过打开文件,读取每一行,从行中获取元素并将其添加到字典来填充,然后关闭文件。 该字典在程序的其他地方使用,它接受输入数据到程序中,然后在字典中找到密钥并使用24个元素与输入数据进行比较。 StreamReader s = File.OpenText(file); string lineData = null; while ((lineData = s.ReadLine()) != null) { var elements = lineData.Split(‘,’); //Do stuff with elements var compareElements = elements.Take(24).Select(x => x[0]); FileData.Add(elements[27], new List(compareElements)); } s.Close(); 我刚刚被告知CSV文件现在将是800mb,并且其中有大约800万条记录。 我刚刚尝试在我的双核Win 32位笔记本电脑上加载4GB RAM进行调试,它抛出了OutOfMemoryException 。 我现在认为不将文件加载到内存中是最好的选择,但需要找到一种快速搜索文件的方法,以查看输入数据是否具有与element[27]相等的匹配项,然后获取前24个元素在该CSV中并将其与输入数据进行比较。 a)即使我坚持使用这种方法并使用16GB内存并且Windows 64bit会让字典中的许多项目都可以吗? […]

multithreading文件编写

我试图使用多个线程写入大文件的不同部分,就像分段文件下载器一样。 我的问题是,这样做的安全方法是什么? 我是否打开文件进行编写,创建我的线程,将Stream对象传递给每个线程? 我不希望发生错误,因为多个线程可能同时访问同一个对象。 顺便说一下,这是C#。

设置codeDOM文件的文件版本

我正在寻找为使用codeDOM生成的exe文件设置文件版本的任何方法。 我的总是0.0.0.0。 编程显然是首选,但在这一点上,任何东西都会好于没有。

写入文件C#的性能

我的情况概述: 我的任务是从文件中读取字符串,并将它们重新格式化为更有用的格式。 重新格式化输入后,我必须将其写入输出文件。 以下是必须完成的示例。 文件行示例: ANO=2010;CPF=17834368168;YEARS=2010;2009;2008;2007;2006 178343681682010Sua declaração não consta na base de dados da Receita Federal05/01/2012178343681682009Sua declaração não consta na base de dados da Receita Federal05/01/2012178343681682008Sua declaração não consta na base de dados da Receita Federal05/01/2012178343681682007Sua declaração consta como Pedido de Regularização(PR), na base de dados da Secretaria da Receita Federal do Brasil05/01/2012178343681682006Sua declaração […]