String.Split, похоже, неправильно использует перегрузки - PullRequest
0 голосов
/ 09 марта 2020

Простая проблема всякий раз, когда я переносил класс консольного приложения в Windows класс Form, единственное, что было заложено кирпичом, это использование String.Split для разделения на указанное количество подстрок. Не уверен, почему это так, поскольку я могу посмотреть на перегрузки и подтвердить, что перегрузка char [], int присутствует. Вот картинка.

error code and example line throwing error

Ответы [ 2 ]

0 голосов
/ 09 марта 2020

Там нет перегрузки, которая принимает один символ. Вы хотите тот, который принимает массив:

string[] parts = line.Split(new char[]{','}, 3)
0 голосов
/ 09 марта 2020

Поскольку вы пытаетесь использовать эту версию метода String.Split, вашим первым аргументом должен быть массив.

Здесь - это список перегрузок, которые поддерживаются. Использование String.Split(',') работает, поскольку эта перегрузка указывает, что аргумент separator является аргументом params.

Однако, если вы хотите использовать перегрузку Split(char[], int), первый аргумент не указывается в качестве аргумента params, что означает, что вы должны использовать этот метод следующим образом:

var sections = line.Split(new[] {','}, 3);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...