You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#:如何将CSV经纬度列转换为嵌套列表格式的JSON

解决方案

你需要生成包含Coord键的JSON结构,其值为二维坐标列表。调整代码逻辑,直接构建符合要求的结构即可:

// 加载CSV文件并转换为DataTable
WorkBook workbook = WorkBook.LoadCSV("C:\\local\\Test\\Test.csv", fileFormat: ExcelFileFormat.XLSX, listDelimiter: ",");
WorkSheet ws = workbook.DefaultWorkSheet;
DataTable dt = ws.ToDataTable(true);

// 初始化二维列表存储坐标对
List<List<double>> coordPairs = new List<List<double>>();

// 遍历每一行数据,提取Lat和Lng并组装成子列表
foreach (DataRow dr in dt.Rows)
{
    // 转换为数值类型,确保JSON输出是数字而非字符串
    if (double.TryParse(dr["Lat"].ToString(), out double lat) && 
        double.TryParse(dr["Lng"].ToString(), out double lng))
    {
        coordPairs.Add(new List<double> { lat, lng });
    }
}

// 构建API要求的结构
var apiRequestData = new 
{
    Coord = coordPairs
};

// 序列化为目标JSON格式
string jsonOutput = JsonConvert.SerializeObject(apiRequestData);
Console.WriteLine(jsonOutput);

关键调整说明

  • 放弃字典列表的生成逻辑,直接构建二维列表存储每个[纬度, 经度]对
  • 用匿名类封装成API需要的{"Coord": [...]}顶层结构
  • 添加double.TryParse做类型转换校验,避免CSV数据格式异常导致报错
  • 确保输出的JSON中坐标是数值类型,而非字符串(API通常要求数值格式)

内容的提问来源于stack exchange,提问作者CGarden

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 15:35:09