Skip to main content
 首页 » 编程设计

C# 如何使用文件流读取目录中的所有 jpeg 文件,以便文件不被锁定

2024年02月23日30unruledboy

如何使用 Filestream 读取目录中的所有 jpeg 文件以使文件不被锁定?我当前的代码在下面,没有提到 Filestream,因为我无法让它工作。非常感谢您的帮助。

    public Form1() 
    { 
        InitializeComponent(); 
 
        images = new List<Image>(); 
        // add images 
 
        DirectoryInfo di = new DirectoryInfo(@"\\server\files\"); 
        FileInfo[] finfos = di.GetFiles("*.jpg", SearchOption.TopDirectoryOnly); 
        foreach (FileInfo fi in finfos) 
            images.Add(Image.FromFile(fi.FullName)); 
 
   } 
 
    private void buttonNext_Click(object sender, EventArgs e) 
    { 
        index++; 
        if (index < 0 || index >= images.Count) 
            index = 0; 
        pictureBox1.Image = images[index]; 
        int count = index + 1; 
        labelCount.Text = "Showing " + count.ToString() + " of " + images.Count; 
    } 

请您参考如下方法:

您需要调用Open并传递 FileShare.ReadWrite:

using (var stream = fi.Open(FileMode.Open, FileAccess.Read, FileShare.ReadWrite)) 
    images.Add(Image.FromStream(stream));