阅读量:0
在C++中,read()
函数通常与文件描述符一起使用,用于从文件或其他类型的输入源(如管道、套接字等)读取数据
#include<iostream> #include <fcntl.h> // 包含文件控制函数,如 open() #include <unistd.h> // 包含 read() 和 close() 函数 int main() { const char *file_path = "example.txt"; // 要打开的文件路径 int file_descriptor; // 文件描述符 char buffer[1024]; // 存储读取数据的缓冲区 ssize_t bytes_read; // 实际读取到的字节数 // 以只读模式打开文件,获取文件描述符 file_descriptor = open(file_path, O_RDONLY); if (file_descriptor == -1) { std::cerr << "Error opening file: "<< file_path<< std::endl; return 1; } // 使用 read() 函数读取文件内容 bytes_read = read(file_descriptor, buffer, sizeof(buffer) - 1); if (bytes_read == -1) { std::cerr << "Error reading from file: "<< file_path<< std::endl; close(file_descriptor); return 1; } // 确保字符串以空字符结尾 buffer[bytes_read] = '\0'; // 处理读取到的数据,例如将其输出到控制台 std::cout << "File content: "<< buffer<< std::endl; // 关闭文件描述符 close(file_descriptor); return 0; }
这个示例展示了如何在C++中使用 read()
函数从文件读取数据。首先,我们使用 open()
函数以只读模式打开文件,并获取文件描述符。然后,我们使用 read()
函数从文件描述符读取数据到缓冲区。最后,我们处理读取到的数据(在这个例子中,我们将其输出到控制台),并使用 close()
函数关闭文件描述符。