2014-08-31 4 views
0

Я делаю простую командную программу, и, пытаясь создать каталог, я получаю сообщение об ошибке, что в пути есть недопустимые символы, я предполагаю, что NetworkStream добавил невидимые символы ?C# удалить невидимые символы из 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 ОШИБКА: System.Argument Исключение, Недопустимые символы в пути

+0

Почему бы не использовать проверку строки в вашем отладчике? –

+0

Использует невидимые символы. Я бы не смог их увидеть. – user3818701

+0

да, вы бы. конвертировать в байтовый массив (или что угодно) –

ответ

1

dir.ToCharArray() Помещенный в выражении отладчик часов. Теперь вы увидите индивидуальные коды символов, в том числе непечатаемые, такие как 0.

Смежные вопросы