2015-02-23 3 views
-2

Я хочу спросить, как читать CSV-файл и отображать определенные значения из файла CSV.Чтение значений CSV и отображаемых значений

Мой файл CSV выглядит следующим образом:

"10","20""1AA","1BB,"1CC" 
"30","40""2AA","2BB,"2CC" 
"50","60""3AA","3BB,"3CC" 

Итак, я хочу, чтобы получить 1AA если целое находится между 10 и 20 без каких-либо API, если это возможно.

То, что я пытаюсь сделать:

Если Integer (INT I) равен 57, он должен вернуть 3AA.
Если i равно 33, он должен вернуть 2AA.

Теперь он должен

+0

Вы можете прочитать файл с помощью чтения потока затем прочитать построчно весь список файлы гримов или массив всех строк, а затем применить фильтр, чтобы получить ваш требуемые строки, а затем получить данные из этих строк. Короче попробуйте что-то и в случае возникновения проблемы. –

+0

Используйте доступный анализатор CSV для обработки краевых случаев. –

ответ

1

Используйте available CSV parser обрабатывать крайние случаи. После того, как вы использовали его и успешно извлекли поле вы можете использовать:

string col2 = @"20""AA"; // literal string for demonstration purposes 
string[] tokens = col2.Split('"'); 
int num; 
if (tokens.Length == 2 && int.TryParse(tokens[0].Trim(), out num) && num >= 10 && num <= 20) 
{ 
    string whatYouWant = tokens[1]; // AA 
} 
+0

Это не помогает мне, потому что мой CSV-файл имеет более 1 строки ... См. Мое редактирование – bramhaag

+0

@bramhaag: как это важно? Если вы обрабатываете строки с помощью csv-parser по вашему выбору, вы получаете все поля с помощью соответствующих методов (fe ['parser.ReadFields()'] (https://msdn.microsoft.com/en-us/library/ microsoft.visualbasic.fileio.textfieldparser.readfields% 28v = vs.110% 29.aspx) с помощью 'TextFieldParser'). Тогда все, что остается от вашего вопроса, выше строки. Если вы хотите увидеть полный код, ваш вопрос слишком широк, поскольку вы действительно хотите, чтобы мы выполнили ваше требование для вас. –

+0

@bramhaag: теперь, когда я перечитал ваш отредактированный вопрос, теперь это совершенно другой вопрос. Вы хотите взять значение определенной строки в соответствии с целым параметром. Итак, в чем проблема с вашим текущим подходом? –

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