Tag: 文件

File.ReadLines没有锁定它?

我可以打开一个FileStream new FileStream(logfileName, FileMode.Open, FileAccess.Read, FileShare.ReadWrite); 没有锁定文件。 我可以用File.ReadLines(string path)做同样的事情吗?

创建文件服务器上文件的下载链接

我正在寻找一种方法(轻松,优先;))创建一个单独的文件服务器上的文件的下载链接。 情况如下:我正在开发的应用程序(vb.net中的asp.net 2.0,但我在c#中有类似的问题,无论哪种解决方案适用于我)都将在公司内部运行。 按照良好做法,文件存储和Web应用程序位于两个单独的服务器上。 我基本上需要能够创建一个文件的下载链接,我必须访问该文件的唯一可用URL是\ servername \ folder1 \ folder2 \ folder3 \ file.txt (可以是任何类型的文件) Weblinks根本不起作用。 这是它目前的设置方式: tablerowfield.Text = String.Format( “Click me”, filename) 由于显而易见的原因,这不起作用。 它曾经被设置为将该文件写入应用程序路径本身并且完美地工作,但这不是好习惯,这就是我改变它(或尝试)的原因。 我阅读了有关创建下载页面的解决方案,然后在数据库中有一个表,其中包含链接并返回适当的Web URL以供下载,但不幸的是,我面临的时间限制不允许我开发它。 假设我可以像上面那样为文件提供一个包含完整文件路径的字符串,那么创建链接的最简单方法是什么?单击时,下载文档? 注意:我在此环境中拥有0个管理员权限。 那真的没有帮助我。 让我们假设我得到了如上所述的正确链接,并拥有相应的文件访问权限等。 更新: 上面的示例适用于IE,但不适用于Firefox和Chrome。 IE将其转换为文件:// servername / …链接,它可以实现预期,但FF和Chrome都主动决定这是不安全的,并已从浏览器中禁用它。

在所有子目录中查找具有特定扩展名的文件数

有没有办法找到特定类型的文件数,而无需在Directory.GetFiles()或类似方法中循环遍历所有结果? 我正在寻找这样的东西: int ComponentCount = MagicFindFileCount(@”c:\windows\system32″, “*.dll”); 我知道我可以创建一个递归函数来调用Directory.GetFiles,但是如果我可以在没有所有迭代的情况下执行此操作,那将会更加清晰。 编辑:如果没有递归和迭代自己不可能做到这一点,那么最好的方法是什么?

如何在c#中将大文件拆分成块?

我正在通过电线制作一个简单的文件传输发送器和接收器应用程序。 到目前为止,我发送的是发送方将文件转换为字节数组,并将该数组的块发送给接收方。 这适用于高达256mb文件,但上面的任何内容,行: byte[] buffer = StreamFile(fileName); //This is where I convert the file Throws a System out of memory exception. 我正在寻找一种方法来读取块中的文件然后写入该块而不是将整个文件加载到一个byte 。 我怎么能用FileStream做到这一点? 编辑: 对不起,到目前为止,这是我糟糕的代码: private void btnSend(object sender, EventArgs e) { Socket clientSock = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); byte[] fileName = Encoding.UTF8.GetBytes(fName); //file name byte[] fileData = null; try { fileData = StreamFile(textBox1.Text); […]

如何获取实际(本地化)文件夹名称?

我在c#中编写一个function,我需要列出给定目录中的所有文件/文件夹名称。 该function在EN OS上运行良好,但是当我在本地化操作系统(例如)德语上运行应用程序时,我仍然获得特殊文件夹的英文名称(程序文件而不是程序,collections夹而不是Favoriten等)。 我不认为带有Environment.SpecialFolder的Environment.GetFolderPath可以提供任何帮助,因为它与我想要的完全相反,即它给出了枚举的特殊文件夹的完整路径,而我想要给定的本地化名称路径。 我尝试过使用File,SHFileInfo,但没有用。 任何想法,我怎样才能获得操作系统中显示的文件夹名称?

图像文件副本正被另一个进程使用

我正在尝试创建一个用户perfil编辑窗口,在这个窗口中有一个Image控件 当我选择一个图像文件时,它将显示在此Image控件中并将此文件复制到我的图像文件夹中,第一次就可以了,但第二次显示错误 “该进程无法访问文件’C:\ 1.jpg’,因为它正被另一个进程使用。” 我认为这是因为我的Image控件正在使用这个文件,所以,我不知道我能做什么 private void Select_Click(object sender, RoutedEventArgs e) { OpenFileDialog od = new OpenFileDialog(); if (od.ShowDialog() == true) { string imageLocal = @”C:/1.jpg”; File.Copy(od.FileName, imageLocal, true); image1.Source = new BitmapImage(new Uri(imageLocal)); } }

TransactionScope与C#中的文件

我一直在使用TransactionScope来处理数据库,感觉还不错。 我正在寻找的是以下内容: using(var scope=new TransactionScope()) { // Do something with a few files… scope.Complete(); } 但显然这不起作用 – 如果有20个文件,并且第9个文件发生exception,所有之前的8个仍然保持更改而其余的保持不变 – 不执行回滚。 那么,为文件实现类似范围的行为的最佳方法是什么? 我希望有一个简单的答案,但如果没有,你能给我一些指示,或者指点我的相关文章吗?

如何根据扩展名获取文件类型信息? c#中的(不是MIME)

如何获得基于扩展的常规文件类型描述,如资源管理器吗? 所以不是MIME,而是最终用户看到的信息,比如。 .doc = Microsoft Office Word 97 – 2003文档.zip = ZIP文件.avi =video文件。 我怎样才能获得似乎可用的“辅助”信息,我猜它不是基于扩展的。 就像在“video文件”上一样,它可以为您提供电影的“长度”或者在doc文件中为您提供了多少页面等等。

下载文件并自动将其保存到文件夹

我正在尝试创建一个用于从我的网站下载文件的UI。 该站点具有zip文件,需要将这些文件下载到用户输入的目录中。 但是,我无法成功下载该文件,它只是从一个临时文件夹打开。 码: private void webBrowser1_Navigating(object sender, WebBrowserNavigatingEventArgs e) { e.Cancel = true; string filepath = null; filepath = textBox1.Text; WebClient client = new WebClient(); client.DownloadFileCompleted += new AsyncCompletedEventHandler(client_DownloadFileCompleted); client.DownloadFileAsync(e.Url, filepath); } 完整源代码: http : //en.paidpaste.com/LqEmiQ

如何使用C#将字符插入文件

我有一个巨大的文件,我必须在特定位置插入某些字符。 在C#中最简单的方法是什么,而不是再次重写整个文件。