2

我有一个加密函数,可以加密字符串以用作文件名。问题是许多加密字符串包含在 Windows 中的文件名中不允许出现的字符,例如 / 或 \ ...

有什么方法可以加密文件名(或者至少让用户无法直接读取它们,直到它们被程序解密)?

谢谢

4

3 回答 3

7

假设文件名没有值(如果有,我会将该数据添加为文件内容),我将只使用Path.GetRandomFileName并传递它。

[Path.GetRandomFileName] 返回可用作文件夹名称或文件名的加密强随机字符串。

于 2012-07-09T21:34:27.803 回答
4

我会让文件名没有意义,但不加密。这将使您的生活更轻松。然后我会加密文件的内容

要获得随机名称,您可以尝试

  • Path.GetRandomFileName. 它返回一个名称,但不创建文件。

    示例输出:atqsfpoj.rsh

  • Path.GetTempFileName. 它在%TEMP%文件夹中创建一个唯一命名的零字节文件。

    示例输出:C:\Users\%UserName%\AppData\Local\Temp\tmp35AD.tmp

于 2012-07-09T21:39:01.467 回答
1

我认为他要求的是一个只返回字母的函数。不久前我写了类似的东西,但是有一个库:试试这个链接

于 2012-07-09T21:49:01.840 回答