C#从NetworkStream中删除不可见的字符

时间:2014-08-31 07:49:18

标签: c# networking tcp stream networkstream

我正在创建一个简单的命令程序,在尝试创建目录时,我收到路径中存在无效字符的错误,我猜测NetworkStream添加了不可见的字符?

代码:

Console.WriteLine(">> Recieved: " + Encoding.ASCII.GetString(data, 0, data.Length));
byte[] back = null;
if (Encoding.ASCII.GetString(data, 0, data.Length).Contains("cd "))
{
    try
    {
        back = Encoding.UTF8.GetBytes(">> Created Directory");
        stream.Write(back, 0, back.Length);
        string dir = Encoding.ASCII.GetString(data, 0, data.Length).Replace("cd ", "");
        Directory.CreateDirectory(dir);
    }
    catch (Exception ex)
    {
        Console.WriteLine(ex.ToString());
    }

}

EXACT ERROR:System.Argument异常,路径中的非法字符

1 个答案:

答案 0 :(得分:1)

dir.ToCharArray()放入调试器监视表达式中。您现在可以看到各个字符代码,包括不可打印的字符代码,如0。