jmeter导入CSV,执行时报错<EOF>怎么办
友情提示: 本文章干货太干,收藏价值极高
不能说百分百会遇到这个问题,至少99.9%会遇到!

遇到上面这个情况你是怎么解决的呢?是不是也根据出现的问题直接百度或者deepseek了?
我想举个例子:天气预报说今天天气会很热,大家注意防暑。以下是几种人的思路:
- 张三:衣服穿少一些,涂好防晒,戴好帽子和遮阳伞,拿好小风扇降温
- 李四:正常出门,热了就脱一件,不行再吃块雪糕,喝点冰水,冷水洗洗脸和胳膊
- 王五:正常出门,什么也不管,继续该做什么事就做什么事
- 马六:这天出什么门啊,不出门了!
解析(如有异议,建议评论区留言,反正我不回复):
张三:属于防范意识比较强的人,所以他大概率不会因为天气热而导致中暑或者晒伤
李四:属于被动接受的人,所以他总是遇到问题。能想办法去解决问题,但是存在一定中暑概率
王五:属于我命油我不油天的人,他总能遇到问题,但是不会去解决问题而选择搁置,时间长了极大概率中暑
马六:属于爱逃避风险的人,虽然躲避了炎热天气,可能也丢失了一天的工资
主动出击杜绝问题发生才是上上策
生活中李四比较多,毕竟大家都是打工人,哪有时间去准备那么充分呢?其实张三以前就是李四,只不过是他通过不断地积累,知道了应该怎么做。
说的有点多了,回到问题主题:
上图所示问题大概意思是,无法正常读取到文件,或者读取文件的内容为空。
因为是csv文件,无法通过我们桌面右键新建一个该类型文件。所以就有了曲线救国的方法:
- 创建一个Excel(xsl)文件,把自己要参数化的部分按照要求填入,然后保存为CSV文件
- 创建一个txt文件,同样按要求填入后保存,修改文件类型为CSV
- 使用notepad++,按要求填入后保存,然后转化为无BOM格式文件
- 使用vscode,按要求填入后保存
以上几种方式都是无代码的方式,基本上是大家电脑上都会有的,保存后建议大家再次打开查看下是否乱码,如果格式正确的话恭喜你!
通过以上几种方式创建后,大家大概率往下操作不会再遇到,如果再遇到的话,排查思路:
- 检查文件内是否有多余或者少写的key或者value,确保格式正确
- 检查jmeter的CSV配置项(CSV Data Set Config)内配置是否正确,这一步也是大家经常出问题的点,配置可参考下图,多个值第三项用英文逗号隔开,单个值时也建议保留分隔符(默认英文逗号),是否允许带引号建议选择True

以下是deepseek查找的一些详细步骤,大家按需使用:
要创建一个 无 BOM(Byte Order Mark)的 UTF-8 编码 CSV 文件,可以按照以下方法操作,确保 JMeter
或其他工具读取时不会出现乱码问题。
📌 方法 1:使用 Notepad++(推荐)
步骤:
-
打开 Notepad++(官网下载)。
-
输入 CSV 内容(示例):
username,password user1,123456 张三,abc测试 -
转码为 UTF-8 无 BOM:
- 点击菜单栏 编码 → 转为 UTF-8 无 BOM。
- 确保状态栏显示
UTF-8 无 BOM。
-
保存文件:
- 点击 文件 → 另存为。
- 文件名输入
data.csv,保存类型选所有文件 (*.*)。 - 编码选项 确认是
UTF-8 无 BOM。
📌 方法 2:使用 VS Code
步骤:
-
打开 VS Code(官网下载)。
-
新建文件,输入 CSV 内容:
id,name 1,测试用户 2,John Doe -
设置编码:
- 点击右下角编码按钮(如
UTF-8)。 - 选择 “通过编码保存” → “UTF-8”(VS Code 默认无 BOM)。
- 点击右下角编码按钮(如
-
保存文件:
- 文件扩展名手动输入
.csv(如data.csv)。
- 文件扩展名手动输入
📌 方法 3:使用 Excel(需额外注意)
Excel 默认保存的 CSV 是 ANSI/GBK 编码,需通过以下步骤转换为 UTF-8 无 BOM:
- 用 Excel 编辑数据,保存为
CSV (逗号分隔)(*.csv)。 - 用 Notepad++ 或 VS Code 重新打开该文件,按上述方法转码为
UTF-8 无 BOM后保存。
⚠️ 注意:Excel 直接另存为
CSV UTF-8 (逗号分隔)(*.csv)会带 BOM,不推荐!
📌 方法 4:命令行生成(Linux/Mac)
echo -e "id,name\n1,测试用户\n2,John Doe" > data.csv
- 默认生成的 CSV 是 UTF-8 无 BOM(可通过
file -I data.csv验证)。
🔍 如何验证文件是否无 BOM?
方法 1:用 Notepad++ 查看
- 打开文件后,右下角显示
UTF-8 无 BOM即正确。

file -I data.csv
输出应为 charset=utf-8(无 BOM 会显示 utf-8,有 BOM 会显示 utf-8 with BOM)。
方法 3:用 Hex 编辑器查看
- 用 HxD(Windows)或
hexdump(Linux/Mac)检查文件开头:- 无 BOM:开头直接是文本(如
u,s,e,r,n,a,m,e)。 - 有 BOM:开头会有
EF BB BF字节。
- 无 BOM:开头直接是文本(如
🚨 常见问题
Q1:为什么必须用“无 BOM”的 UTF-8?
- BOM 会导致部分工具(如 JMeter、Linux 脚本)错误解析文件开头,引发乱码或读取失败。
Q2:JMeter 读取 CSV 仍乱码?
- 在 CSV Data Set Config 中显式设置:
File Encoding: UTF-8 - 确保 HTTP 请求头包含
Content-Type: ...; charset=utf-8。
Q3:如何在 Python 中生成无 BOM CSV?
import csv
with open("data.csv", "w", encoding="utf-8-sig") as f: # 注意 utf-8-sig 会添加 BOM
writer = csv.writer(f)
writer.writerow(["username", "password"])
writer.writerow(["张三", "test123"])
- 如果要 无 BOM,改用
encoding="utf-8"。
🎯 总结
| 工具 | 关键操作 | 适用场景 |
|---|---|---|
| Notepad++ | 编码 → 转为 UTF-8 无 BOM → 保存 | Windows 用户首选 |
| VS Code | 右下角选择 UTF-8 → 保存 | 跨平台通用 |
| Excel | 先存 CSV,再用文本编辑器转码 | 需兼容 Excel 的场景 |
| 命令行 | echo 或 printf 生成 | Linux/Mac 快速生成 |
按上述方法操作后,JMeter 通过 CSV Data Set Config 读取时即可避免乱码问题!
更多推荐



所有评论(0)