用于.NET或Visual C ++ 6.0的Uuencode / Uudecode库?

时间:2009-05-18 20:26:25

标签: .net visual-c++

我有一些uuencoded的文件,我需要使用.NET 2.0或Visual C ++ 6.0解码它们。任何有用的好图书馆/课程?看起来这不是内置于.NET或MFC中。

3 个答案:

答案 0 :(得分:1)

试试uudeview,here。它是一个开源库,运行良好,除了uuencoded之外,还将处理yenc文件。您可以将它与C / C ++一起使用,也可以为C#编写一个interop包装器而不会有太多麻烦。

答案 1 :(得分:1)

Code Project有一个用于uuencoding / decode的.NET库+源代码。实际算法本身在网络上广泛传播并且非常短。

代码项目链接:http://www.codeproject.com/KB/security/TextCoDec.aspx

文章简介:

  

本文介绍了一个类库   用于编码/解码文件和/或   .NET中的几种算法中的文本。   该库的一些功能:

     

在引用中编码/解码文本   可打印的编码/解码文件和   Base64中的文本编码/解码文件   和UUEncode中的文本编码/解码   yEnc中的文件

答案 2 :(得分:1)

我知道这是一个老问题,但我想我会发布我的回复以防其他人遇到它。

对于编码器和解码器,

I wrote a Stream based implementation of uuencoding进行了大量的单元测试。

解码任何流:

using (Stream encodedStream = /* Any readable stream. */)
using (Stream decodedStream = /* Any writeable stream. */)
using (var decodeStream = new UUDecodeStream(encodedStream))
{ 
    decodeStream.CopyTo(decodedStream);
    // Decoded contents are now in decodedStream.
}

编码任何流:

bool unixLineEnding = // True if encoding with Unix line endings, otherwise false.
using (Stream encodedStream = /* Any readable stream. */)
using (Stream decodedStream = /* Any writeable stream. */)
using (var encodeStream = new UUEncodeStream(encodedStream, unixLineEnding))
{
    decodedStream.CopyTo(encodeStream);
    // Encoded contents are now in encodedStream.
}