相关疑难解决方法(0)

在C#中加密和解密字符串

在C#中满足以下内容的最现代(最佳)方式是什么?

string encryptedString = SomeStaticClass.Encrypt(sourceString);

string decryptedString = SomeStaticClass.Decrypt(encryptedString);
Run Code Online (Sandbox Code Playgroud)

但最小的涉及盐,键,与字节[]等混乱的大惊小怪等.

谷歌搜索和混淆我发现的东西(你可以看到类似的SO Q列表,看这是一个欺骗性的问题).

c# encryption

330
推荐指数
6
解决办法
57万
查看次数

输入不是有效的Base-64字符串,因为它包含非基本64字符

我有一个REST服务,它读取文件并将其转换为另一个控制台应用程序,然后将其转换为Byte数组,然后再转换为Base64字符串.这部分是正确的,但是当在应用程序中接收到相同的流时,它会被操纵并且不再是有效的Base64字符串.一些垃圾字符被引入流中.

我将流转换回Byte时获得的异常是"输入不是有效的Base-64字符串,因为它包含非基本64个字符,两个以上的填充字符或填充中的非空白字符人物".

在服务:

[WebGet(UriTemplate = "ReadFile/Convert", ResponseFormat = WebMessageFormat.Json)]  
public string ExportToExcel()
  {
      string filetoexport = "D:\\SomeFile.xls";
      byte[] data = File.ReadAllBytes(filetoexport);
      var s = Convert.ToBase64String(data);
      return s;
  }
Run Code Online (Sandbox Code Playgroud)

申请时:

       var client = new RestClient("http://localhost:56877/User/");
       var request = new RestRequest("ReadFile/Convert", RestSharp.Method.GET);
       request.AddHeader("Accept", "application/Json");
       request.AddHeader("Content-Type", "application/Json");
       request.OnBeforeDeserialization = resp => {resp.ContentType =    "application/Json";};
       var result = client.Execute(request);
       byte[] d = Convert.FromBase64String(result.Content); 
Run Code Online (Sandbox Code Playgroud)

c# file-io base64

71
推荐指数
7
解决办法
20万
查看次数

如何解决"base64无效字符"错误?

当我尝试使用以下代码将value1转换为byte []时:

string value1 = "4rdHFh%2BHYoS8oLdVvbUzEVqB8Lvm7kSPnuwF0AAABYQ%3D";
byte[] value2 = Convert.FromBase64String(value1);
Run Code Online (Sandbox Code Playgroud)

Ι收到错误,字符串内容无效base-64字符...

怎么了?

谢谢!

c# base64 character-encoding

5
推荐指数
4
解决办法
4万
查看次数

标签 统计

c# ×3

base64 ×2

character-encoding ×1

encryption ×1

file-io ×1