高分求一个eml的解码代码(C#)......
解决方案 »
- url加时间字符的问题
- 请教了:谁有关于打印方面的源代码啊,(c#.net winform的),给俺一个让俺研究研究,谢谢了
- 高手快来帮忙~~在线等答案~~~
- C#我的Socket服务端运行一段时间后就出现很多的close_wait连接,并且后面的连接无法再读取数据
- 母版页的标签 问题 谁能解决下 谢谢
- datagridview异常:为自动填充列调整大小期间不能执行此操作
- 换行时第一行输入的英文全部被带到了第二行(急在线等)
- 关于DataGrid的问题
- 【问题】不死心啊还问,C#如何获得网页中指定的一段文本,比如md5解密后结果
- 水晶报表疑难问题!
- 请问哪位高手有实现Trackback的程序?谢谢,急!!!
- 请问可以将下面的一串HTML源文件串成一个字符串吗?
{
string InputString=quoted_printableString;
StringBuilder builder1 = new StringBuilder();
InputString = InputString.Replace("=\r\n", "");
for (int num1 = 0; num1 < InputString.Length; num1++)
{
if (InputString[num1] == '=')
{
try
{
if (HexToDec(InputString.Substring(num1 + 1, 2)) < 0x80)
{
if (HexToDec(InputString.Substring(num1 + 1, 2)) >= 0)
{
byte[] buffer1 = new byte[1] { (byte) HexToDec(InputString.Substring(num1 + 1, 2)) } ;
builder1.Append(Encoding.Default.GetString(buffer1));
num1 += 2;
}
}
else if (InputString[num1 + 1] != '=')
{
byte[] buffer2 = new byte[2] { (byte) HexToDec(InputString.Substring(num1 + 1, 2)), (byte) HexToDec(InputString.Substring(num1 + 4, 2)) } ;
builder1.Append(Encoding.Default.GetString(buffer2));
num1 += 5;
}
}
catch
{
builder1.Append(InputString.Substring(num1, 1));
}
}
else
{
builder1.Append(InputString.Substring(num1, 1));
}
}
return builder1.ToString();
}
private static int HexToDec(string hex)
{
int num1 = 0;
string text1 = "0123456789ABCDEF";
for (int num2 = 0; num2 < hex.Length; num2++)
{
if (text1.IndexOf(hex[num2]) == -1)
{
return -1;
}
num1 = (num1 * 0x10) + text1.IndexOf(hex[num2]);
}
return num1;
} ////outlook编码static string Base64ToText(string base64String, Encoding code)
{
byte [] bs;
try
{
bs = Convert.FromBase64String(base64String);
}
catch (ArgumentNullException)
{
return "Base 64 string is null.";
}
catch (FormatException)
{
return "Base 64 string length is not 4 or is not an even multiple of 4.";
} char [] chars = new char [code.GetCharCount(bs, 0, bs.Length)];
code.GetChars(bs, 0, bs.Length, chars, 0);
return new string(chars);
}