`

读取file1的内容以行为单位倒置输出到file2中(改进)

阅读更多
/*
	功能:读取文件file1.txt的内容比如:
	12
	34
	56
	输出到file2.txt
	56
	34
	12
	备注:改进算法——本算法针对字符串也有效,
		  但长度受到1024的限制,也就是说,一行最
		  多不超过1024个字符,还得包括结束符'\0。
	日期:2009.12.30
	作者:网络牛人!
*/

#include <stdio.h>
/*递归调用的经典!!*/
void test(FILE *fread, FILE *fwrite)
{
    char buf[1024] = {0};
	
	/*fgets(char *buf, int size, FILE *stream)
	用来从参数stream所指的文件内
	读入字符并存到参数buf所指的内存空间,直
	到出现换行字符、读到文件尾或是已读了
	size-1个字符为止,最后会加上NULL作为
	字符串结束。
	*/
    if (!fgets(buf, sizeof(buf), fread))
        return;

    test( fread, fwrite );
    fputs(buf, fwrite);
}

int main(int argc, char *argv[])
{
        FILE *fr = NULL;
        FILE *fw = NULL;

        fr = fopen("data", "rb");
        fw = fopen("dataout", "wb");

        test(fr, fw);

        fclose(fr);
        fclose(fw);
        return 0;
}
0
0
分享到:
评论

相关推荐

    对文件反转、倒置的工具,解决CTF和生活中的文件处理问题

    标题提到的“文件反转、倒置”是一种常见的数据处理技术,通常用于对文件内容进行重新排列,例如将字节顺序颠倒,或者按照不同的步长进行读取。这种技术在CTF比赛中特别有用,因为很多隐藏的flag(标志)可能就藏在...

    使用RandomAccessFile流将一个文本文件读出,并导致写入到另一个文件当中。

    ### 使用RandomAccessFile流将一个文本文件读出并写入到另一个文件中的知识点解析 在Java编程语言中,`RandomAccessFile`类提供了一种非常灵活的方式来读取和写入文件。它支持随机访问,意味着我们可以直接跳转到...

    java 图片压缩 iphone拍照上传旋转问题处理压缩工具类

    在`rotateAndSave`方法中,我们首先读取输入图片的元数据,并检查其中的Exif信息来确定旋转角度。然后,根据这个角度旋转图片。`getRotationAngle`方法需要实现从元数据中提取旋转角度的逻辑,这通常涉及到解析Exif...

    bmp位图文件的读取与保存

    保存BMP文件的过程相对复杂,因为需要考虑到图像的倒置。由于BMP文件是自底向上存储的,最底部行的像素数据先于顶部行。所以,如果直接按照数组顺序写入,会导致图像上下颠倒。为解决这个问题,我们可以先将原始数据...

    java实现倒序读取文件功能示例分享

    在Java编程中,倒序读取文件是一种常见的需求,例如在日志分析或者处理大量文本数据时。本示例将详细介绍如何使用Java实现这一功能,同时提供了一个实用的`FileUtil`工具类作为参考。 首先,`FileUtil`类包含两个...

    Java图片倒影效果实例源码.zip

    这通常涉及到对原始图像进行翻转并将其与原图结合,以创造出一个上下颠倒的“倒影”效果。下面将详细介绍如何通过Java来实现这个功能。 首先,我们需要使用Java的`java.awt.image.BufferedImage`类来加载和操作图片...

    C语言精粹(第2版)随书关盘

    按【F3】键或者“File-&gt;Open”菜单命令,打开1.c文件, 按【Ctrl+F9】键,或者“Run-&gt;Run”菜单命令,编译运行该程序。 ◎ 光盘目录清单如下: 第一部分 基础篇 001 第一个C程序 002 运行多个源文件 003 ...

    快乐的linux命令行

    - **tee-从Stdin读取数据,并同时输出到Stdout和文件**:`tee`命令接收输入,并将其复制到标准输出和一个或多个文件中。这使得可以同时查看输出并保存结果。 #### 从shell眼中看世界 - **(字符)展开**:在shell中...

    历年全国计算机等级考试_二级C上机考试题库及答案分析.pdf

    - `void WriteText(FILE *fp)`和`void ReadText(FILE *fr)`定义了两个操作文件的函数,分别是写入文本到文件和从文件中读取文本。 3. 数组操作: 文档中有数组的定义和操作,包括数组赋值和数组逆序等。 - `for(i=...

    silvaco 器件模拟

    这可以通过在ATLAS Commands菜单中选择Structure和Mesh...,然后指定Type为Read from file,输入文件名“nmos.str”,最后写入Mesh语句到DECKBUILD文本窗口。 模型指定是仿真过程中的重要环节。在已有的NMOS结构...

    java关于BMP位图文件解析的分析与实现[源码][附图]

    - 数据可能是反序的,因为Windows BMP文件通常以“倒置”的方式存储,即最底部的行在文件中最早出现。 实现这个过程,我们可以创建一个Java类,包含解析和显示BMP文件的方法。首先,使用`java.io.RandomAccessFile...

    基于Java的五子棋游戏的设计(源代码+论文).zip

    5. **文件操作**:保存和读取游戏进度、用户设置等信息时,Java的File和FileInputStream/OutputStream类会派上用场。此外,论文可能涉及到如何优化这些数据的存储格式,如JSON或XML。 6. **设计模式**:良好的代码...

    C语言源代码格式化 完工 小文版本 V1.10 20120831 0955.zip

    功能:在指定目录下生成256个文件夹,每个文件夹内生成256个32K的文本文件,内容为“A”。 FileGenerate 20111121 1641.7z 功能: 猜想:对于“8.3格式文件”的文件名,(也许是出于向后兼容的目的),操作系统...

    C语言源代码格式化 完工 V1.08 20120801 1627.7z

    功能:在指定目录下生成256个文件夹,每个文件夹内生成256个32K的文本文件,内容为“A”。 FileGenerate 20111121 1641.7z 功能: 猜想:对于“8.3格式文件”的文件名,(也许是出于向后兼容的目的),操作系统...

    C语言源代码格式化 完工 V1.09 20120821 2116.7z

    功能:在指定目录下生成256个文件夹,每个文件夹内生成256个32K的文本文件,内容为“A”。 FileGenerate 20111121 1641.7z 功能: 猜想:对于“8.3格式文件”的文件名,(也许是出于向后兼容的目的),操作系统...

    用Java做的记事本程序

    在“打开”功能中,程序会使用File类来定位文件,然后用BufferedReader读取文件内容到内存;在“保存”功能中,程序会使用BufferedWriter将内存中的文本内容写入到指定文件。 4. **文本处理**: JTextArea组件用于...

    220个C源代码 初学C语言必备

    源代码使用方法是(以实例1为例): 将该实例的源码,比如实例1的1.c文件(可以在001目录下找到), 拷贝到tc编译器目录下,运行tc.exe,打开编译器, 按【F3】键或者“File-&gt;Open”菜单命令,打开1.c文件, 按...

    C语言源代码格式化 完工 V1.04 20120226 1946.7z

    功能:在指定目录下生成256个文件夹,每个文件夹内生成256个32K的文本文件,内容为“A”。 FileGenerate 20111121 1641.7z 功能: 猜想:对于“8.3格式文件”的文件名,(也许是出于向后兼容的目的),操作系统...

Global site tag (gtag.js) - Google Analytics