通过文件路径读取CSV表格内的数据



ReadDataFromCSV.h

UCLASS()
class MYPROJECT_API UReadDataFromCSV : public UBlueprintFunctionLibrary
{
    GENERATED_BODY()

public:
    UFUNCTION(BlueprintCallable, Category = "CSV")
        static TArray<FString> GetCSVDataToString(FString csvPath);

};


ReadDataFromCSV.cpp

#include "ReadDataFromCSV.h"
//CSV解析器
#include "Runtime/Core/Public/Serialization/Csv/CsvParser.h"
//文件路径检索助手
#include "Runtime/Core/Public/Misc/Paths.h"

TArray<FString> UReadDataFromCSV::GetCSVDataToString(FString csvPath)
{
    //文件路径+文件名
    FString csvFile = FPaths::ProjectContentDir() + csvPath;
    //返回值
    TArray<FString> csvContent;

    //判断路径下的文件是否存在
    if (FPaths::FileExists(csvFile))
    {
        FString FileContent;
        //把csv文件内容读取到字符串中
        FFileHelper::LoadFileToString(FileContent, *csvFile);
        //把字符串进行解析
        FCsvParser* csvfiles = new FCsvParser(FileContent);

        //解析器GetRows()方法会返回所有的单元格里的C风格的字符串
        /*
        *(   [TCHAR*]    [TCHAR*]    [TCHAR*] )——> TArray<const TCHAR*>              *    [TCHAR*]    [TCHAR*]    [TCHAR*]                                 )——> TArray<TArray<const TCHAR*>>
        *    [TCHAR*]    [TCHAR*]    [TCHAR*]                                /
        */
        FCsvParser::FRows content = csvfiles->GetRows();
        //TArray<TArray<const TCHAR*>> content = csvfiles->GetRows();

        /*    遍历数组
        *    int[] arr = new int[] { 1, 2, 3 }
        *    for (int i : arr) {
        *        ...
        *    }
        */

        //从第一行遍历到最后一行
        for (TArray<const TCHAR*>& ite : content)
        {
            //在当前行中,从第一个字符指针(单元格里的字符串)遍历到最后一个字符指针(单元格里的字符串)
            for (const TCHAR*& chr : ite)
            {
                csvContent.Add(chr);
            }
        }
        return csvContent;
    }
    else
        return csvContent;
}


测试数据

TestData.csv

    



 关卡蓝图



运行结果

原文地址:https://www.cnblogs.com/map1e/p/10793702.html

时间: 2024-10-09 11:55:07

通过文件路径读取CSV表格内的数据的相关文章

. 我要让我的用户向指定的目录上载文件, 把 包含在表格内

我要让我的用户向指定的目录上载文件, 把 包含在表格内,而上传的脚本是这样的:. 为什么它不工作? A. Y在调用SAVE之前,不能使用表格选择.正确的操作方法是:先将其上传到一个临时文件夹,然后复制并移动到指定目录,如下示:n = Upload.Save "c:\upload" For Each File in Upload.Files File.Copy Upload.Form("Path") & "\" & File.Ext

怎么把excel表格内的数据导入数据库?

第一种方法: 思路:想要把excel表格内的数据直接导入数据库不是那么容易,可以把excel表格另存为.csv格式的文档(特点:内容以逗号分割):然后通过一系列的文档操作函数处理成为一个二维数组,然后再进一步处理即可导入数据库 思路正确但有时会出现问题(explode这里会出现问题,因为数据中可能也包含","号所以一般不采用此方法,请看第二种方法) 1:准备一个需要导入数据的excel表格: 2:另存为.csv后缀的文档(特点:内容以逗号分割) 3:进行文档操作函数处理 1 $file

python文件路径读取方法整理(path)

使用Python时,经常用到文件的路径读取,做了path方法的不同读取方式整理: import os #os.path.dirname(__file__)返回的是.py文件的目录 path1=os.path.dirname(__file__) print(path1) #os.path.abspath(__file__)返回的是.py文件的绝对路径(完整路径) path2=os.path.abspath(__file__) print(path2) #组合使用 path3=os.path.dir

Python_Example_文件路径读取返回_文件目录选择文件_实现程序

2018-09-14 Author: 楚格 IDE: Pycharm2018.02   Python 3.7 KeyWord : 文件路径 文件名称选择 Explain:  Testing_Config_List 思路: 1. def Function_Select_File():  获取当前路径(调试中默认路径) 2. 遍历 当前文件夹下的所有文件和文件夹 以供选择使用 3. 拼接字符串 返回有用的路径 4.着重处理了 文件选择部分  方法还可以继续优化 5. code 一步步搭建,注释部分是

利用java反射机制实现读取excel表格中的数据

如果直接把excel表格中的数据导入数据库,首先应该将excel中的数据读取出来. 为了实现代码重用,所以使用了Object,而最终的结果是要获取一个list如List<User>.List<Book>等,所以需要使用泛型机制去实现.下面会给出代码,可能会稍微复杂一点,但注释很清晰,希望大家耐心阅读. 在上代码之前简单说一下思路: 1.excel表格必须有表头,且表头中各列的值要与实体类的属性相同: 2.先读取表头信息,然后获取表头列数,接着确定需要使用的set方法的名称,并存到数

Linqpad使用(调试Linq、结合linq调试业务场景、表格内编辑数据)

linqpad是一款linq语句调试工具,功能如下: 1.直接执行linq语句并查看生成的原生sql语句 2.可结合linq+C#代码进行业务场景调试 3.表格内直接新增.修改.删除数据 4.直接执行SQL语句 官方下载网站:http://www.linqpad.net/ 版本分别: Free:免费版,提供最基本的功能 Premium:高级版,需要购买,提供智能提示功能(非常重要,可自行搜索下载) 以Sqlserver的Northwind数据库为例,讲解一下使用方法: 一.执行简单的linq语句

java读取Excel表格中的数据

1.需求 用java代码读取hello.xls表格中的数据 2.hello.xls表格 3.java代码 package com.test; import java.io.File; import jxl.*; public class ReadExcel{ public static void main(String[] args) { int i; Sheet sheet; Workbook book; Cell cell1,cell2,cell3,cell4,cell5,cell6,cel

unity读取csv表格进字典

using System; using UnityEngine; using System.Collections; using System.Collections.Generic; public class MessageText { private static MessageText instance; /// <summary> /// 单利模式 /// </summary> /// <returns></returns> public stati

使用python脚本,读取excel表格生成erlang数据

为了将excel数据自动转换成所需要的erlang数据,听同事说使用python会很方便简单,就自学了两天python,写了一个比较粗糙的python脚本,不过能用,有什么优化的地方请指教 代码如下: #!/usr/bin/env python # -*- coding: UTF-8 -*- import sys from openpyxl.reader.excel import load_workbook import os import os.path def gen_data(filena