近用c语言做文件操作比较频繁,记几个常用的操作
获得文件大小:
fseek(fp, 0, SEEK_END);
int fileSize = ftell(fp);
rewind(fp);
读取指定位置的数据块:
fseek( fp,offset,SEEK_SET );
int num_read = fread(buf, 1, length, fp);
删除文件
int res = access( filename,0 ); // 判断文件是否存在
if ( res == 0 )
{
res = remove( filename );// 删除文件
return ( res ==0 );
}
在指定位置写入块数据:
fseek( fp, offset, SEEK_SET );
num_write = fwrite( buf, 1, n, fp );
打开文件方式中有一个比较特别的,如果 某文件中已经有了一部分数据,你需要继续在上面添加数据,但是是在指定位置添加,也就是说,仍然需要通过 fseek 找到写入位置,然后再 fwrite,这时候需要以 "rb+" 方式打开。而不能以"a"或者"ab+"方式。以"a"方式打开,fseek函数不起作用。
获得文件属性
struct stat st;
FILE *fp = fopen( filename.c_str(),"rb" );
if ( !fp )
{ // error
}
fstat( fp->_file, &st );
遍历目录
std::string dirspec = dir + "\\*.*";
struct _finddata_t filefind;
int done = 0;
intptr_t handle = 0;
if( ( handle = _findfirst(dirspec.c_str(),&filefind) ) == -1 )
return IVS_FAIL;
IVS_RESULT res = IVS_OK, response =IVS_OK;
while( !(done=_findnext(handle,&filefind)) )
{
if( !strcmp(filefind.name,"..") || !strcmp(filefind.name,".") )
continue;
AdsFileInfo info;
if((_A_SUBDIR==filefind.attrib))
{
info._filename = filefind.name;
info._fileSize = filefind.size;
info._atime = filefind.time_access;
info._ctime = filefind.time_create;
info._mtime = filefind.time_write;
info._isdir = true;
}
else
{
std::string tmpFilename = dir + "\\";
tmpFilename += filefind.name;
res = getFileInfo( tmpFilename, info );
response = (!SUCCESS(res))?res: response;
}
list.push_back( info );
}
_findclose(handle);
分享到:
相关推荐
### C语言文件操作详解 #### 1. 文件的打开与关闭 在C语言中,进行文件操作是一项基本技能。为了确保文件的安全性以及资源的有效利用,任何文件在进行读写等操作前都需要先通过特定的函数打开,在使用完毕后也需要...
在进行C语言文件操作时,通常要涉及到几个基本步骤,包括打开文件、读写文件、关闭文件等。C语言提供了丰富的文件操作函数,主要包括以下几类: 1. 文件打开与关闭函数 - `fopen()`:用于打开文件。 - `fclose()`:...
C语言文件操作解析 在文件操作中除了打开操作以及读写操作,还有几种比较常见的操作。下面介绍一下这些操作中涉及到的函数。 一.移动位置指针的函数 rewind函数和fseek函数,这两个函数的原型是: void rewind...
在C语言中,处理二进制文件主要涉及以下几个关键步骤: 1. **打开文件**:使用`fopen`函数以二进制模式打开文件,如`"rb"`用于读取,`"wb"`用于写入,`"ab"`用于追加。 ```c FILE *fp = fopen("filename.bin", ...
Linux 操作系统下常见文件类型分析 Linux 操作系统下常见文件类型可以分为多种,包括压缩和打包文件、普通文件格式、系统文件、程序和脚本文件等。 压缩和打包文件是指使用某种压缩算法或打包工具将多个文件或...
### C语言文件读写操作详解 #### 一、概述 在C语言中,文件操作是一项非常重要的功能,它允许程序与外部数据交互。文件读写是文件操作中最基础也是最常用的操作之一。本文将详细介绍如何在C语言中执行基本的文件...
在C语言中,文件操作主要包括以下几个步骤: 1. **文件的打开**:文件打开实际上是为文件创建一个信息区和文件缓冲区。信息区用于存储文件的相关信息,如文件名、位置等;缓冲区则是程序读写文件的临时存储区域。...
9. **文件操作**:C语言提供了一系列的文件操作函数(fopen, fclose, fread, fwrite, fseek, ftell等),面试者需要了解如何读写文件,定位文件指针,以及处理文件错误。 10. **标准库和库函数**:面试题可能涵盖、...
### C语言中的文件操作 在C语言中,文件操作是一项重要的功能,它允许程序与外部数据进行交互。本文将详细探讨C语言中的...通过本文的学习,相信你已经掌握了C语言文件操作的基本技能,可以进一步探索更高级的主题。
这个压缩包包含了几百个C语言的常见源程序,涵盖了各种基础和进阶的编程概念,是学习C语言和巩固编程技能的宝贵资源。下面我们将深入探讨其中可能涉及的知识点。 1. **基础语法**:C语言的基础包括变量定义、数据...
在深入了解示例代码之前,我们先来了解一下与文件操作相关的几个基础概念: - **文件指针**:`FILE *` 类型的指针,用于指向文件。 - **文件打开模式**: - `"w"`:写入模式,若文件存在则会清除原有内容;若不...
3. **文件读写函数**: `fopen`, `fclose`, `fputs`, `fgets`, `fprintf` 和 `perror` 是几个常用的文件操作函数。 #### 三、文件写入操作 **代码示例**: ```c #include int main() { FILE *fp; char str[] = ...
本文将详细介绍C语言中文件读写的几个关键概念及其实现方法,包括文件的打开与关闭、写入、读取、追加以及复制等操作。 #### 二、文件的基本操作 ##### 1. 包含必要的头文件 在进行文件操作之前,首先需要包含`...
文件操作通常包括以下几个步骤: 1. **打开文件**:使用`fopen`函数打开文件。 2. **读写文件**:根据需要调用相应的读写函数。 3. **关闭文件**:使用`fclose`函数关闭文件。 #### 三、打开文件 打开文件是文件...
这些基本的文件操作在进行C语言程序开发时非常常见,尤其是在需要处理持久化数据的场景中。需要注意的是,在实际使用过程中,文件路径和权限问题是很重要的,正确的文件路径和合适的权限设置可以避免程序在文件操作...
本文将详细介绍几种不同的文件操作方法,包括基于C语言的传统方法、基于C++的方法、基于Windows API的方法、基于C++Builder库的方法以及一些特殊的文件操作技巧。 #### 壹、基于C的文件操作 ##### 1. 流式文件操作...