csv - JMeter 使用同一列中带有逗号的值写入 CSV
问题描述
我正在向 CSV 写入一些值。其中一个列值有一个逗号,如“Hello, World”。 当我写入 CSV 时,它会在第 1 列中写入 Hello,而 World 在第 2 列中。
我希望两者都写在同一列中。我尝试了很多选择,但没有运气。这是我正在使用的代码
**///////////////Create CSV File**
import java.io.*;
import java.lang.*;
import java.util.*;
import java.io.FileOutputStream;
String path = "ExtractedFiles/";
String dataExtractionCSVFile = path+ "ExtractedData.${DateTime}.csv";
f = new FileOutputStream(dataExtractionCSVFile, true);
p = new PrintStream(f);
this.interpreter.setOut(p);
print("comments");
f.close();
vars.put("dataExtractionCSVFile",dataExtractionCSVFile)
/////////////将值写入CSV文件
import java.io.FileWriter;
comments = vars.get("comments");
dataExtractionCSVFile = vars.get("dataExtractionCSVFile");
f = new FileOutputStream(dataExtractionCSVFile, true);
p = new PrintStream(f);
this.interpreter.setOut(p);
print(comments);
f.close();
解决方案
CSV 中没有“列”这样的概念,如果您使用逗号作为分隔符并且comments
包含逗号,则解决方案将用引号将其括起来。
就像是:
print("\"" + comments + "\"");
如果您要在CSV 数据集配置中重复使用 CSV 文件- 请确保将“允许引用的数据”设置为True
另请注意,使用脚本将数据写入文件具有潜在危险,如果使用超过 1 个线程(用户)运行脚本,您可能会遇到竞争条件,因此请确保将脚本放在关键部分下控制器或切换到 ie Flexible File Writer
推荐阅读
- php - 如何在 Laravel 作业类中使用绑定实现?
- excel - 有没有更好的方法通过 Excel VBA 导入 csv 文件?
- google-cloud-sql - Google Cloud SQL 是否有在线 RPO、RTO 和 ERT 指南?
- html - ARIA 无障碍广播组
- python - 是否可以为线程池设置 maxtasksperchild?
- javascript - Mongoose -> 从自定义 Schema 方法更新文档
- ios - 出现错误 3840“JSON 文本未以数组或对象开头,并且允许未设置片段的选项。” 在应用程序上一段时间后
- git - Git命令列出工作目录中的所有文件
- ansible - 如何用 regex_replace 有条件地替换列表中的文本?
- c++ - 在单个 IF 语句中测试多个布尔值