通过文件路径读取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

关卡蓝图

运行结果

通过文件路径读取CSV表格内的数据的更多相关文章
- python2读取EXCEL表格内的数据时碰到的问题
一,今天在剥离自动化的测试数据时,发生了一个错误,错误显示读取不到某个单元格的数据. 因为我使用的是python2,正好那一个单元格出现的是中文汉字,再者通过查看报错日志,让我了解到错误的原因. di ...
- java通过文件路径读取该路径下的所有文件并将其放入list中
java通过文件路径读取该路径下的所有文件并将其放入list中 java中可以通过递归的方式获取指定路径下的所有文件并将其放入List集合中.假设指定路径为path,目标集合为fileList,遍 ...
- .35-浅析webpack源码之babel-loader入口文件路径读取
在处理./input.js入口文件时,在类型判断被分为普通文件,所以走的文件事件流,最后拼接得到文件的绝对路径. 但是对应"babel-loader"这个字符串,在如下正则中被判定 ...
- 怎么把excel表格内的数据导入数据库?
第一种方法: 思路:想要把excel表格内的数据直接导入数据库不是那么容易,可以把excel表格另存为.csv格式的文档(特点:内容以逗号分割):然后通过一系列的文档操作函数处理成为一个二维数组,然后 ...
- 读取Excel表格日期类型数据的时候
用POI读取Excel数据:(版本号:POI3.7) 1.读取Excel 2.Excel数据处理: Excel存储日期.时间均以数值类型进行存储,读取时POI先判断是是否是数值类型,再进行判断转化 1 ...
- C++读取csv表格文件到vector
这个CSV文件假设知道每行有多少个数,也知道数据的格式,即可使用下面简单的方法实现. 我们假设每行有4个数据,依次是int,int,float,float 基本思路是:把每行的数据定为一个类型,放在v ...
- C#写入(覆盖形式)数据到CSV文件 和 读取CSV文件
/// <summary> /// 写入数据到CSV文件,覆盖形式 /// </summary> /// <param name="csvPath"& ...
- 深度学习原理与框架-递归神经网络-时间序列预测(代码) 1.csv.reader(进行csv文件的读取) 2.X.tolist(将数据转换为列表类型)
1. csv.reader(csvfile) # 进行csv文件的读取操作 参数说明:csvfile表示已经有with oepn 打开的文件 2. X.tolist() 将数据转换为列表类型 参数说明 ...
- Spring boot 文件路径读取异常
在开发代码中,有一段需要获取resources目录下的一个配置文件(这里写作test.xml). 这段代码在ide中没有任何问题,但是一打成jar包发布到线上,这段代码就会报找不到对应文件的错误. 按 ...
随机推荐
- Bootstrap教程目录
1.Bootstrap 简介(Web前端CSS框架) 2.Bootstrap 学习资料 3.Bootstrap 入门 4.Bootstrap 概览 5.Bootstrap 栅格系统 6.Bootstr ...
- windows 使用命令打开防火墙的端口
Open TCP Port 80 in Windows Firewall Using Netsh [McNeel Wiki]https://wiki.mcneel.com/zoo/zoo5netsh ...
- Android访问中央气象台的天气预报API得到天气数据
最新说明:该接口已失效! 2014-03-04 可申请它公布的API,需申请:http://smart.weather.com.cn/wzfw/smart/weatherapi.shtml 在用A ...
- Awake & Start
[Awake & Start] MonoBehaviour.Awake() Awake is used to initialize any variables or game state be ...
- git配置多用户多平台
在Git使用中经常会碰到多用户问题,例如:你在公司里有一个git账户,在github上有一个账户,并且你想在一台电脑上同时对这两个git账户进行操作,此时就需要进行git多用户配置. 首先配置不同的S ...
- weblogic参数说明
公司有个项目,部署在weblogic8.1上之后,发现比在tomcat下慢很多,经过分析排查,原因是web应用的WEB-INF下的weblogic.xml里的参数设置不合理(使用默认值有时并非最佳值) ...
- SimpleTag——认识自定义标签
自定义标签 自定义标签的开发与应用步骤 编写完成标签功能的 Java 类(标签处理器) 编写标签库描述(tld)文件,在tld文件中对自定义中进行描述 在 JSP 页面中导入和使用自定义标签 ①. 创 ...
- javascript中把一个数组的内容全部赋值给另外一个数组
如:var a = [1,2,3,4];var b= [];b = a;这个不是把值赋值过去而是b作为a的引用,b改变的是a如何b指向的是一个新数组,a把元素值全部赋值过去? 1.普通数组可以使用 ...
- Linux 上安装Gearman及其PHP扩展
安装Gearman服务端 # yum install -y uuid-devel libuuid libuuid-devel uuid boost-devel libevent libevent-de ...
- poj3080 Blue Jeans(暴枚+kmp)
Description The Genographic Project is a research partnership between IBM and The National Geographi ...