JMeter 使用同一列中带有逗号的值写入 CSV
Posted
技术标签:
【中文标题】JMeter 使用同一列中带有逗号的值写入 CSV【英文标题】:JMeter write to CSV with values with comma in the same column 【发布时间】:2021-08-08 06:16:31 【问题描述】:我正在向 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();
【问题讨论】:
【参考方案1】:CSV 中没有“列”这样的概念,如果您使用逗号作为分隔符并且您的 comments
包含逗号,则解决方案将用引号将其括起来。
类似:
print("\"" + comments + "\"");
如果您要重复使用 CSV Data Set Config 中的 CSV 文件 - 请确保将“允许引用的数据”设置为 True
另外请注意,使用脚本将数据写入文件具有潜在危险,如果使用超过 1 个线程(用户)运行脚本,您可能会遇到race condition,因此请确保将您的脚本在Critical Section Controller下或者切换到ieFlexible File Writer
【讨论】:
以上是关于JMeter 使用同一列中带有逗号的值写入 CSV的主要内容,如果未能解决你的问题,请参考以下文章