`
sgl124764903
  • 浏览: 174674 次
  • 性别: Icon_minigender_1
  • 来自: 邯郸
社区版块
存档分类
最新评论

倒序输出文件内容

阅读更多

 

import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.RandomAccessFile;

public class FromEndRF {
  public static void read(String filename) {
    read(filename, "GBK");
  }

  public static void read(String filename, String charset) {

    RandomAccessFile rf = null;
    try {
      rf = new RandomAccessFile(filename, "r");
      long len = rf.length();
      long start = rf.getFilePointer();
      long nextend = start + len - 1;
      String line;
      rf.seek(nextend);
      int c = -1;
      while (nextend > start) {
        c = rf.read();
        if (c == '\n' || c == '\r') {
          line = rf.readLine();
          if (line != null) {
            System.out.println(new String(line.getBytes("ISO-8859-1"), charset));
          }else {
            System.out.println(line);
          }
          nextend--;
        }
        nextend--;
        rf.seek(nextend);
        if (nextend == 0) {// 当文件指针退至文件开始处,输出第一行
          System.out.println(rf.readLine());
        }
      }
    } catch (FileNotFoundException e) {
      e.printStackTrace();
    } catch (IOException e) {
      e.printStackTrace();
    } finally {
      try {
        if (rf != null)
          rf.close();
      } catch (IOException e) {
        e.printStackTrace();
      }
    }
  }

  public static void main(String args[]) {
    read("d:\\2.txt", "utf-8");
  }
}

分享到:
评论

相关推荐

    按行倒序输出指定文本文件内容的命令行工具

    按行倒序输出指定文本文件内容的命令行工具。支持大于2GB的文本文件。

    字符窜倒序输出

    字符串倒序输出是指将一个已知的字符串按照逆序的方式重新排列输出。这种操作在日常编程中非常常见,可用于字符串处理、算法设计等多个场景。例如,将“你们好!”倒序输出为"!好们你"。 ### 2. C# 语言基础 C# 是...

    将一篇英文文章倒序输出

    本问题关注的是一个特定的文本处理案例:将一篇英文文章倒序输出。这个任务虽然简单,但涉及到了编程语言的基本语法、文件操作以及字符串处理技巧。下面将详细阐述实现这个功能的步骤和相关知识点。 首先,我们需要...

    c语言实现倒序输出

    在C语言中,倒序输出通常是指将一个字符串或者数组中的元素按照相反的顺序显示出来。这是一项基础的编程任务,对于初学者来说是理解数组、指针和循环控制的重要练习。下面我们将深入探讨如何使用C语言实现倒序输出。...

    自己写的 C语言 倒序输出.rar

    在压缩包内的文件名为“倒序输出.cpp”,这表明源代码是用C++编写的,虽然标题中提到了C语言。这是因为C++兼容C语言,所以可以使用C语言的风格来编写C++代码,特别是当涉及到基本的字符串处理时。cpp文件通常包含C++...

    arr.zip_数组的倒序输出_数组相乘

    根据压缩包内的"倒序输出.txt"和"ArrXArr2"文件,我们可以推测,"倒序输出.txt"可能包含了实现数组倒序输出的代码示例,而"ArrXArr2"可能包含的是数组相乘的代码或结果。为了具体了解这些操作的实现,我们需要解压...

    digui.rar_字符倒序输出

    总结来说,"digui.rar_字符倒序输出" 文件提供了一个使用递归堆栈实现字符倒序输出的C语言程序示例,通过递归函数和栈数据结构的结合,巧妙地完成了字符串的逆序操作。在学习这个示例时,我们可以深入理解递归和栈的...

    C语言倒序输出 I am a Student.

    标题 "C语言倒序输出 I am a Student." ...而`IAmAStudent.exe`是编译后的可执行文件,用户可以在支持C语言的环境下运行它,观察倒序输出的效果。通过实践和运行这样的程序,学习者能够更深入地理解C语言的语法和机制。

    linux查看文件内容命

    `tac` 命令与`cat` 类似,但它是倒序输出文件内容。 **常见用法:** - `tac filename`:倒序显示文件`filename`的内容。 **示例:** ``` tac test.txt ``` 此命令会倒序显示`test.txt`文件的内容。 ##### 3. `nl`...

    Lua实现正序和倒序的文件读取方法

    倒序输出文件内容则是另一种实现方式。这种情况下,链表的构建是从文件的最后一行开始的,每次读取一行数据,将其作为链表的一个节点,并将其插入到链表的头部。这样,当文件全部读取完毕后,链表的顺序即为文件内容...

    java 图形编程 文本倒序输出.rar

    `倒序输出.jar`是一个Java可执行jar文件,包含了所有必要的类和资源,通过Java虚拟机(JVM)执行。运行bat文件,即可启动这个图形应用程序。 在学习和实践这个示例时,开发者需要掌握Java基础语法、Swing组件使用、...

    ACM.rar_字符倒序输出

    标题“ACM.rar_字符倒序输出”暗示了这是一个与计算机编程相关的问题,特别是涉及到字符处理和字符串操作的算法。ACM通常指的是国际大学生程序设计竞赛(ACM International Collegiate Programming Contest),在...

    输入四位十六进制数并倒序输出

    实现任意输入四位十六进制整数,以反序的方式输出十六进制数。例如:输入9AF0,则输出0FA9.

    asp倒序输出

    - **循环遍历并倒序输出**:通过`for`循环来遍历文本框中的内容,并使用`Substring`方法来提取每个字符,最终将它们倒序输出到Label控件中。 ### 控件使用 页面中使用了以下几种ASP.NET控件: - **`<asp:TextBox>...

    数组倒序的C语言程序

    写入过程通常包含打开输出文件(如果不存在则创建),写入数组元素,然后关闭文件。 最后,`array.c`文件应包含上述功能的完整C语言源代码。编译该源代码,使用`gcc array.c -o array`,生成可执行文件`array`。...

    JAVA设计文本文件读取倒序排序

    这个名为"JAVA设计文本文件读取倒序排序"的项目,利用NetBeans IDE,实现了读取文本文件内容并进行倒序排序的功能,同时也提供了保存处理结果的能力。在这个过程中,涉及到的关键知识点包括: 1. **Java I/O流**:...

    c代码-for 循环练习2(三角) 倒序输出字母(乱七八糟的)

    在C语言编程中,`for`循环是一种常用的控制流程结构,...如果你是初学者,建议先从理解`for`循环开始,然后逐步解决倒序输出和“乱七八糟”的部分,最后将所有元素整合到`main.c`文件中,编译并运行程序以查看结果。

    1000~9999倒序

    文件名“倒序”可能是指这个文件包含了与倒序操作相关的代码或数据。 在实际编程中,这个任务可以应用于各种场景,比如数据分析中的数字处理、游戏中的随机数生成,或者是其他需要对数字进行特殊操作的算法。理解和...

    linux C语言 文件逆序

    本篇文章将深入探讨如何使用C语言在Linux环境下实现文件内容的逆序操作。这个任务涉及到了对文件系统的操作、内存管理以及字符串处理等多个知识点。 首先,我们需要理解Linux中的文件I/O(输入/输出)系统调用。在...

    c代码-对10个数组元素依次赋值0,1,2,3,4,5,6,7,8,9,并按倒序输出。

    然后,我们要倒序输出数组。可以使用另一个for循环,但这次是从数组的最后一个元素开始遍历到第一个元素: ```c for (int i = 9; i >= 0; i--) { printf("%d ", arr[i]); } ``` 这个循环会打印出arr[9](即9)到...

Global site tag (gtag.js) - Google Analytics