@echo off
setlocal enabledelayedexpansion
: 解决中文乱码问题
: chcp 65001:: 获取批处理脚本所在的目录
set "scriptDir=%~dp0":: 设置avro文件和json文件的目录
set "avroDir=%scriptDir%avro\"
set "jsonDir=%scriptDir%json":: 确保json目录存在,如果不存在则创建
if not exist "%jsonDir%" (mkdir "%jsonDir%"
):: 遍历avro目录下的所有avro文件
for %%f in ("%avroDir%*.avro") do (:: 提取文件名(不带扩展名)set "fileName=%%~nf":: 构建avro-tools命令 :: 2>NUL 表示忽略错误信息,不显示在命令行中。java -jar "%scriptDir%avro-tools-1.10.2.jar" tojson --pretty "%%f" > "%jsonDir%\!fileName!.json" 2>NUL:: 输出转换进度(可选)echo Converted %%f to %jsonDir%\!fileName!.json
):: 是否有转换文件,如果没有则输出提示信息
if not exist "%jsonDir%\*.json" (echo No avro files found in %avroDir%.
) else (echo All avro files have been converted to JSON.
)
endlocal
pause