В настоящее время я делаю проверку прокси с моим вводом Текстовое поле. Я получаю ошибку C#: индекс находился за пределами массива от прокси (123.34.123.45:8080).Индекс находился за пределами ошибки массива
Мои коды будут ...
string occoultProxy = "123.34.123.45:8080";
WebProxy proxy = new WebProxy(occoultProxy.Split(':')[0], Convert.ToInt32(occoultProxy.Split(':')[1])); //Error at this line
// WebProxy(string Host, int Port)
ОБНОВЛЕНО
я попробовал еще коды, но все еще есть код ошибки. Пожалуйста помоги.
string[] address = occoultProxy.Split(new[] { ':' });
MessageBox.Show(address[0].ToString());
MessageBox.Show(address[1].ToString());
WebProxy proxyHTTP = new WebProxy(address[0], Convert.ToInt32(address[1]));
Выход
123.34.345.23 <!-- Some Proxy here, seems good here -->
IndexOutOfRangeException was unhandled(Index was outside the bounds of the array.)
это работает для меня. Не существует ли проблема в получении occoultProxy? – ne2dmar
Я предполагаю, что значение 'occoultProxy' является IP без номера порта. – Rik
Я пробовал ваш образец и работает без проблем. Вы уверены, что строки, которые вы передали в инструкцию, всегда содержали точку с запятой? Поскольку вы позволяете вводить адреса пользователем, вы должны проверить строку для точки с запятой. – FoxHound