Как работать со строкой с запятой из csv, когда нам нужно прочитать данные с помощью loadrunner?

Когда я использовал Loadrunner, он мог считывать данные из файла csv. Как мы знаем, файл csv отделяется запятой.

Вопрос в том, что если сам параметр в csv имеет запятую, то строка будет разделена на несколько сегментов. Это не то, что я хочу получить.

Как мы можем получить исходные данные с запятой?


person user1730731    schedule 09.10.2012    source источник


Ответы (4)


Если данные содержат запятую, используйте escape-символ для сохранения данных в параметре. Например, если имя «Смит, Джон», оно может быть сохранено как Смит\, Джон в файле данных Loadrunner.

person Harry    schedule 22.03.2017

Когда вы сохраняете файл в Excel, который имеет запятые в фактических данных ячейки, вся ячейка будет находиться внутри двух символов ". Также кажется, что ячейки с пробелом внутри них находятся внутри " символов.

Пример

ColA,ColB,"ColC with a , inside",ColD,ColE

Дополнительная информация о формате файла CSV: http://www.parse-o-matic.com/parse/pskb/CSV-File-Format.htm

Ответ на вопрос заключается в том, что, возможно, самый простой способ справиться с разделителями — это изменить разделитель на символ ;. Это также допустимый разделитель в файлах CSV.

Тогда пример будет:

ColA;ColB;"ColC with a , inside";ColD;ColE
person K.Sandell    schedule 09.10.2012
comment
Как вы говорите, я открываю CSV-файл в блокноте и меняю разделитель на ;. GD_BH_NX,广东1楼备货区(内销),备货区 После замены я снова открываю файл с помощью excel, данные будут такими: . - person user1730731; 10.10.2012
comment
Кстати, как я могу закончить строку... Я использую два пробела и ‹br/›, но это не работает.... test ‹br/› строка 2 строка 3 - person user1730731; 10.10.2012

Может быть, правильно использовать функции C для чтения данных из файла (например, fopen/fread)? Когда вы прочтете его, вы сможете использовать «strchr», чтобы найти первые кавычки char и вторые кавычки char. Все в этом интервале будет значением, и не имеет значения, находится ли запятая внутри. Для получения документации о fopen, fread,strchr вы можете обратиться к справочникам по функциям HP или C. Надеюсь, что это поможет вам.

person XanderR    schedule 09.10.2012
comment
Это неверно для LoadRunner. Встроенный механизм параметров заботится обо всем управлении файлами. На самом деле, в начале теста все файлы параметров загружаются в оперативную память, чтобы избежать активности диска во время теста, которая замедлила бы работу виртуальных пользователей, избегая конкуренции за диск с десятками или сотнями потоков, читающих с диска. Механизм параметризации также позволяет использовать пользовательский разделитель, поэтому, хотя по умолчанию используется запятая, вы можете использовать другой символ, который будет отличаться от вашего набора данных. - person James Pulley; 09.10.2012
comment
О.. Я неправильно понял вопрос. Я не видел параметр слова и подумал о чтении пользовательского CSV-файла вместо файла параметров. - person XanderR; 09.10.2012
comment
спасибо за ваш ответ, я впервые пользуюсь веб-сайтом. может я не ясно описал вопрос. - person user1730731; 10.10.2012

Предполагая, что вы читаете параметры из файла данных, просто используйте собственный разделитель. Запятая используется по умолчанию, но вы можете определить ее по своему усмотрению. Всякий раз, когда у меня есть запятая в переменных данных, я обычно использую символ вертикальной черты '|' как способ различать столбцы данных в файле данных.

Внимательно изучите диалоговое окно параметров, и вы увидите, где внести изменения.

person James Pulley    schedule 09.10.2012