C语言中读取txt文件中的数据
以下是一个简单的示例代码,演示如何在C语言中读取txt文件中的数据:
#include <stdio.h>
int main() {
FILE *fp;
char buffer[100];
// 打开文件
fp = fopen("example.txt", "r");
// 如果文件打开失败,则输出错误信息并退出程序
if (fp == NULL) {
printf("无法打开文件!\n");
return 1;
}
// 读取文件内容并输出到屏幕上
while (fgets(buffer, 100, fp) != NULL) {
printf("%s", buffer);
}
// 关闭文件
fclose(fp);
return 0;
}
在上面的代码中,我们使用了fopen()
函数来打开example.txt文件,并将其存储在fp
指针中。如果文件打开成功,则使用fgets()
函数从文件中读取每行数据,并将其存储在缓冲区buffer
中,最后将其输出到控制台。
读取完所有数据后,我们使用fclose()
函数关闭文件并释放资源。
请注意,如果文件不存在或无法打开,fopen()
函数将返回NULL
。在这种情况下,我们使用条件语句来输出错误信息并退出程序。
C++读取txt文件中的数据
以下是一个简单的示例代码,演示如何使用C++读取txt文件中的数据:
#include <iostream>
#include <fstream>
int main() {
std::ifstream file("data.txt"); // 打开文件
int num;
while (file >> num) {
// 使用流提取运算符 >> 逐个读取整数
std::cout << num << " "; // 输出读取的整数
}
file.close(); // 关闭文件
return 0;
}
在上述代码中,我们使用了 std::ifstream
类型的变量 file
来打开一个名为 “data.txt” 的文件。while
循环中使用了流提取运算符 >>
,每次读取一个整数,直到文件读取完毕。最后,使用 file.close()
关闭文件。
请注意,上述代码假定文件中只包含整数,并且每个整数之间用空格或换行符分隔。如果文件中包含其他类型的数据或使用不同的分隔符,读取的方式也需要相应地进行修改。
C++读取txt文件中的float数据并用vector存储
下面是一个基本的示例代码,可以帮助你读取存储在文本文件中的浮点数数据:
#include <iostream>
#include <fstream>
#include <vector>
int main()
{
std::ifstream infile("input.txt"); // 打开名为input.txt的文件
std::vector<float> floatVector; // 创建一个vector,并将浮点数存储在其中
float value;
while (infile >> value) // 循环读取文件中的浮点数
{
floatVector.push_back(value);
}
infile.close(); // 关闭文件
// 输出读取的浮点数
for (int i = 0; i < floatVector.size(); i++)
{
std::cout << floatVector[i] << std::endl;
}
return 0;
}
在此示例中,我们打开名为input.txt
的文件,并创建一个向量,用于存储浮点数。 在while循环中,我们读取文件中的浮点数并将其添加到vector中。 最后,我们关闭文件并使用for循环输出读取的浮点数。
C++读取txt文件中的float数据并用指针存储
下面是一个示例代码,可以实现从txt文件中读取float数据并使用指针存储:
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
// 打开文件
ifstream file("input.txt");
if (!file.is_open())
{
cout << "无法打开文件" << endl;
return 1;
}
// 统计文件中浮点数的数量
int count = 0;
float tmp;
while (file >> tmp)
{
count++;
}
// 分配内存
float* data = new float[count];
// 回到文件开头并读取数据
file.clear();
file.seekg(0, ios::beg);
int i = 0;
while (file >> tmp)
{
data[i] = tmp;
i++;
}
// 关闭文件
file.close();
// 输出读取的数据
for (int i = 0; i < count; i++)
{
cout << data[i] << endl;
}
// 释放内存
delete[] data;
return 0;
}
上述代码中,首先打开txt文件并检查是否打开成功,然后统计文件中浮点数的数量。接着通过new
关键字分配内存,然后回到文件开头进行实际的数据读取。最后输出数据、关闭文件并释放内存。