【问题标题】:C# : convert files of a forlder to base64stringC#:将文件夹的文件转换为base64字符串
【发布时间】:2020-02-05 11:48:49
【问题描述】:

我想将一个文件夹的所有文件都转换为base64string,但是我遇到了System.UnauthorizedAccessException的错误 我检查了我有权限 RWE 的文件夹的安全性 您有解决方案或其他建议来满足此需求

    static void Main(string[] args)
        {
            string FileLocation = @"C:\Users\mmm\Desktop\Nouveaudossier 2";
            string destinationPath = @"c:\folder";
            string[] fileEntries = Directory.GetFiles(FileLocation);
            foreach (string fileName in fileEntries)
            {
                Byte[] bytes = File.ReadAllBytes(fileName);
                String file = Convert.ToBase64String(bytes);

                Byte[] bytess = Convert.FromBase64String(file);
                File.WriteAllBytes(destinationPath, bytess);
            }
            Console.WriteLine("done...........");
            Console.ReadLine();
        }

【问题讨论】:

  • 您是否也检查了每个文件?
  • 您使用的是什么操作系统?在没有提升权限的情况下,不允许在C:\ 下创建文件(您可能需要以管理员身份执行程序)
  • 从不使用硬编码路径!如果您想访问自己的桌面文件夹,请使用Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory))
  • 您无权写入计算机上的 c:\ 文件夹(根目录)。
  • stickybit :这是大量文件 cid :我使用 Windows 10

标签: c# file directory


【解决方案1】:

majita 是对的,您在目标路径中缺少文件名,因为 File.WriteAllBytes 需要文件而不是目录。它应该这样工作

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-15
    相关资源
    最近更新 更多