0

我想从电子邮件中获取附件并将​​其转换为 base64 字符串,以便可以将其存储为 JSON。

在 C# 中,我将附件作为System.IO.Stream.,将其读入字节数组,然后使用Convert.ToBase64String.

不过,在 F# 中,我不知道该怎么做(我是初学者),感觉可能有一种更实用的做事方式......?

4

1 回答 1

1

F# 将函数式风格与面向对象风格相结合,让您可以轻松地从 F# 调用 .NET 库。有时,有一些特定于 F# 的库可以为某些任务(如列表处理)提供更多功能样式,但我认为 base64 编码和流没有类似的东西。

因此,给定一个流,您可以将其读入缓冲区,然后使用 .NET 类型转换为 base64,如下所示:

open System
open System.IO

let stream = // Some stream, for example: new MemoryStream([| 1uy; 2uy; 3uy; 4uy |])
let buffer = Array.zeroCreate (int stream.Length)
stream.Read(buffer, 0, buffer.Length)
Convert.ToBase64String(buffer)
于 2012-11-04T16:37:40.443 回答