通过文件路径读取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包发布到线上,这段代码就会报找不到对应文件的错误. 按 ...
随机推荐
- mysql 批量插入与单条插入 的效率比较
1.数据插入性能(单个插入和批量插入) public class Test { private Long id; private String test; public Long getId() { ...
- Subscript & Inheritance
[Subscript] 1.subscript的定义: 2.Subscript的使用: 3.可以定义多维subscript: 多维Subscript的使用: [Inheritance] 1.overr ...
- xcode恢复语法高亮
[xcode恢复语法高亮] 非常简单,在Organizer中删除derivedData.
- 输入一条url后,发生了什么??
(1)浏览器解析 (2)查询缓存 (3)DNS查询 顺序如下,若其中一步成功直接进去建立连接部分: -- 浏览器自身DNS -- 操作系统DNS -- 本地hosts文件 -- 像域名服务器发送请求 ...
- hibernate 一对多(级联关系)
hibernate 核心配置文件 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hiber ...
- springMVC+spring+mybatis整合(包括文件上传和下载)
driver=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncod ...
- hrabs的数据库session的修改
using System;using System.Data;using System.Collections;using System.Collections.Generic;using Syste ...
- ESP8266-iot-3
ESP8266 WIFI操作 参考资料 模式选择 程序: 把之前的Helloworld程序复制过来改成wifi工程 先输出获取的当前模式 编译后会出错,因为os_printf的头文件没有被包含进来 结 ...
- bootstrap实现嵌套列
<!DOCTYPE html> <html> <head> <title>Bootstrap 实例 - 嵌套列</title> <li ...
- QT背景
Qt是一个跨平台的C++图形用户界面应用程序框架.它为应用程序开发者提供建立基于window界面所需的功能. Qt是诺基亚公司的一个产品.1996年,Qt进入商业领域,已成为全世界范围内数千种成功的应 ...