C 从TXT和分析到类结构
c++ read from txt and parse to class struct
在一个项目上工作,我需要从txt文件中阅读,其中每三行都有我们所需的状态信息,我必须将信息解析到我创建的类中。我知道我需要一对循环,但不确定如何格式化代码。
如果TXT文件:
,这是格式New Hampshire
Concord
9304 1788 9
Massachusetts
Boston
8257 1788 6
Vermont
Montpelier
9609 1791 14
每第三行都需要解析三个单独的INT。到目前为止,这是我的代码:
int main()
{
ifstream file("Example_State_data.txt");
string name;
string capital;
int area = NULL;
int index = NULL;
int addYear = NULL;
int addOrder = NULL;
hashFunc States;
States.setStateInfo("Hawaii", "Honlulu", 0, 0, 0);
States.printTable();
if (file.is_open())
{
while (!file.eof())
{
file >> name;
index++;
}
cout << index << " items found";
file.close();
}
else
{
cout << "file is not open!";
}
}
void hashFunc::setStateInfo(string name, string capital, int area, int
admissionYear, int admissionOrder)
{
int index = Hash(name);
if (hashTable[index]->name == "empty")
{
hashTable[index]->name = name;
hashTable[index]->capital = capital;
hashTable[index]->area = area;
hashTable[index]->admissionYear = admissionYear;
hashTable[index]->admissionOrder = admissionOrder;
}
如果您只需要一种读取数据并将其放置在结构中的方法,则这里有一个示例可以读取您的数据:
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
int main()
{
ifstream inFile("Example_State_data.txt");
if(!inFile.good()) { cout << "File read error" << 'n'; exit(1); }
struct data
{
string name;
string capital;
int area;
int addYear;
int addOrder;
};
vector<data> all_data;
data one;
while
(
getline(inFile, one.name)
&&
getline(inFile, one.capital)
&&
inFile
>> one.area
>> one.addYear
>> one.addOrder
)
{
all_data.push_back(one);
getline(inFile, one.name); // pass third line
}
// ---- Read back ---------
size_t n = all_data.size();
for(size_t i = 0; i < n; ++i)
{
cout
<< all_data[i].name << 't'
<< all_data[i].capital << 't'
<< all_data[i].area << 't'
<< all_data[i].addYear << 't'
<< all_data[i].addOrder << 'n';
}
// --------------------------------------
}
相关文章:
- 如何循环打印顶点结构
- 通过方法访问结构
- 使用不带参数的函数访问结构元素
- 预处理器:插入结构名称中的前一个行号
- 为什么在没有显式默认构造函数的情况下,将另一个结构封装在联合中作为成员的结构不能编译
- 在树结构.txt文件中搜索节点
- 在读取大型 txt 文件时动态分配结构内的向量
- C 从TXT和分析到类结构
- 从TXT文件到C 的结构向量中的数据读取
- .txt文件到C++中的结构数组
- 我想解析一个 txt 文件并将其放入结构中
- .txt文件中的结构数组
- 在 c++ 中从 txt 文件读取到结构
- C++fstream在.txt中搜索一个结构
- ifstream将数组结构到txt文件中,然后尽可能将其提取为数组
- 将 txt 文件读入结构并显示数组
- 如何将.txt文件中的特定整数存储在结构数组中
- 在C中读取txt文件并写入结构
- 将txt文件数据分配给链表中的结构节点
- c++将一个TXT文件逐行读入结构数组中的字符数组