后缀名为RN的文件是什么文件?我如何将它打开?

后缀名为RN的文件是什么文件?我如何将它打开?,第1张

给你一个方法试试,正芹但不保证成功。

1 首先,示范:给D盘一个文件夹加密,暂时命名为 tttt

2 显示系统隐藏文件,我们发现tttt文件夹下多了两个文件,Thumbs.db desktop.ini ,其实我们加密的东西都放在里面,我们以下的破解步骤主要是对它做处理,第二个不多说了,文件夹图哗空标相关。

3. 开始-->运行-->CMD 然后进入tttt文件夹。

4 键入:attrib -s -r -h Thumbs.db 这一步主要是去掉 Thumbs.db 的其他属性

5 运行完上面命令,我们发现Thumbs.db 已经变成普通文件夹的图标,并且可以进入,为了方便,我们给Thumbs.db 重新命名为 t1

6 进入t1,发现有文件夹 sys ,注意:这个文件夹的名字后面有空格,直接对它进行重命名,我们改成t2

7 在命令提示符中 进入t2,发现有文件夹 system. (注意:名字有个. )在Windows下是打不开的 也不能直接重新命名

8 在命令提示符中 输入 dir /x 这命令相信谁都会吧

9 在命令提示符中 输入 REN SYSTEM~1 t3 ---->主要是对system. 进行重新命名

10 现在已经直接可以进入t3了,里面有一堆文件,其中有一个 Thumbs.db.{d3e34b21-9d75-101a-8c3d-00aa001a1652}, 我们给它重新命名为t4,之后发现变成文件夹图标,双击乱清瞎进入,我们的文件都在里面,收工。

使用Java *** 作文本文件的方法详解

摘要: 最初java是不支持对文本文件的处理的,为了弥补这个缺憾而引入了Reader和Writer两个类

最初java是不支持对文本文件的处理的,为了弥补这个缺憾而引入了Reader和Writer两个类,这两个类都是抽象类,Writer中 write(char[] ch,int off,int

length),flush()和close()方法为抽象方法,Reader中read(char[] ch,int off,int length)和close()方法是抽象方法。子类应该分别实现他们。 当我们读写文本文件的时候,采用Reader是非常方便的,比如FileReader,InputStreamReader和BufferedReader。其中最重要的类是InputStreamReader,它是字节转换为字符的桥梁。你可以在构造器重指定编码的方式,如果不指定的话将采用底层 *** 作系统的默认编码方式,例如GBK等。当使用FileReader读取文件的时候。FileReader fr = new FileReader("ming.txt")

int ch = 0

while((ch = fr.read())!=-1 )

{

System.out.print((char)ch)

}

其中read()方法返回的是读取得下个字符。当然你也可以使用read(char[] ch,int off,int length)这和处理二进制文件的时候类似,不多说了。如果使用InputStreamReader来读取文件的时候while((ch = isr.read())!=-1)

{

System.out.print((char)ch)

}

这和FileReader并没有什么区别,事实上在FileReader中的方法都是从InputStreamReader中继承过来的。read()方法是比较好费时间的,如果为了提高效率我们可以使用BufferedReader对Reader进行包装,这样可以提高读取得速度,我们可以一行一行的读取文本,使用readLine()方法。BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("ming.txt")))

String data = null

while((data = br.readLine())!=null)

{

System.out.println(data)

}

当你明白了如何用Reader来读取文本文件的时候那么用Writer写文件同样非常简单。有一点需要注意,当你写文件的时候,穗谈为了提高效率,写入的枝基数据会先放入缓冲区,然猛族谨后写入文件。因此有时候你需要主动调用flush()方法。与上面对应的写文件的方法为:

FileWriter fw = new FileWriter("hello.txt")

String s = "hello world"

fw.write(s,0,s.length())

fw.flush()OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream("hello2.txt"))

osw.write(s,0,s.length())

osw.flush()PrintWriter pw = new PrintWriter(new OutputStreamWriter(new FileOutputStream("hello3.txt")),true)

pw.println(s)

不要忘记用完后关闭流!下面是个小例子,帮助新手理解。其实有的时候java的IO系统是需要我们多记记的,不然哪天就生疏了。

import java.io.*public class TestFile2

{

public static void main(String[] args) throws IOException

{

FileReader fr = new FileReader("ming.txt")

char[] buffer = new char[1024]

int ch = 0

while((ch = fr.read())!=-1 )

{

System.out.print((char)ch)

} InputStreamReader isr = new InputStreamReader(new FileInputStream("ming.txt"))

while((ch = isr.read())!=-1)

{

System.out.print((char)ch)

} BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("ming.txt")))

String data = null

while((data = br.readLine())!=null)

{

System.out.println(data)

} FileWriter fw = new FileWriter("hello.txt")

String s = "hello world"

fw.write(s,0,s.length())

fw.flush() OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream("hello2.txt"))

osw.write(s,0,s.length())

osw.flush() PrintWriter pw = new PrintWriter(new OutputStreamWriter(new FileOutputStream("hello3.txt")),true)

pw.println(s)

fr.close()

isr.close()

br.close()

fw.close()

osw.close()

pw.close()

}

}

java中多种方式读文件

一、多种方式读文件内容

1、按字节读取文件内容

2、按字符读取文件内容

3、按行读取文件内容

4、随机读取文件内容

import java.io.BufferedReader

import java.io.File

import java.io.FileInputStream

import java.io.FileReader

import java.io.IOException

import java.io.InputStream

import java.io.InputStreamReader

import java.io.RandomAccessFile

import java.io.Reader

public class ReadFromFile {

/**

* 以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。

* @param fileName 文件的名

*/

public static void readFileByBytes(String fileName){

File file = new File(fileName)

InputStream in = null

try {

System.out.println("以字节为单位读取文件内容,一次读一个字节:")

// 一次读一个字节

in = new FileInputStream(file)

int tempbyte

while((tempbyte=in.read()) != -1){

System.out.write(tempbyte)

}

in.close()

} catch (IOException e) {

e.printStackTrace()

return

}

try {

System.out.println("以字节为单位读取文件内容,一次读多个字节:")

//一次读多个字节

byte[] tempbytes = new byte[100]

int byteread = 0

in = new FileInputStream(fileName)

ReadFromFile.showAvailableBytes(in)

//读入多个字节到字节数组中,byteread为一次读入的字节数

while ((byteread = in.read(tempbytes)) != -1){

System.out.write(tempbytes, 0, byteread)

}

} catch (Exception e1) {

e1.printStackTrace()

} finally {

if (in != null){

try {

in.close()

} catch (IOException e1) {

}

}

}

}

/**

* 以字符为单位读取文件,常用于读文本,数字等类型的文件

* @param fileName 文件名

*/

public static void readFileByChars(String fileName){

File file = new File(fileName)

Reader reader = null

try {

System.out.println("以字符为单位读取文件内容,一次读一个字节:")

// 一次读一个字符

reader = new InputStreamReader(new FileInputStream(file))

int tempchar

while ((tempchar = reader.read()) != -1){

//对于windows下,rn这两个字符在一起时,表示一个换行。

//但如果这两个字符分开显示时,会换两次行。

//因此,屏蔽掉r,或者屏蔽n。否则,将会多出很多空行。

if (((char)tempchar) != 'r'){

System.out.print((char)tempchar)

}

}

reader.close()

} catch (Exception e) {

e.printStackTrace()

}

try {

System.out.println("以字符为单位读取文件内容,一次读多个字节:")

//一次读多个字符

char[] tempchars = new char[30]

int charread = 0

reader = new InputStreamReader(new FileInputStream(fileName))

//读入多个字符到字符数组中,charread为一次读取字符数

while ((charread = reader.read(tempchars))!=-1){

//同样屏蔽掉r不显示

if ((charread == tempchars.length)&&(tempchars[tempchars.length-1] != 'r')){

System.out.print(tempchars)

}else{

for (int i=0i<charreadi++){

if(tempchars[i] == 'r'){

continue

}else{

System.out.print(tempchars[i])

}

}

}

}

} catch (Exception e1) {

e1.printStackTrace()

}finally {

if (reader != null){

try {

reader.close()

} catch (IOException e1) {

}

}

}

}

/**

* 以行为单位读取文件,常用于读面向行的格式化文件

* @param fileName 文件名

*/

public static void readFileByLines(String fileName){

File file = new File(fileName)

BufferedReader reader = null

try {

System.out.println("以行为单位读取文件内容,一次读一整行:")

reader = new BufferedReader(new FileReader(file))

String tempString = null

int line = 1

//一次读入一行,直到读入null为文件结束

while ((tempString = reader.readLine()) != null){

//显示行号

System.out.println("line " + line + ": " + tempString)

line++

}

reader.close()

} catch (IOException e) {

e.printStackTrace()

} finally {

if (reader != null){

try {

reader.close()

} catch (IOException e1) {

}

}

}

}

/**

* 随机读取文件内容

* @param fileName 文件名

*/

public static void readFileByRandomAccess(String fileName){

RandomAccessFile randomFile = null

try {

System.out.println("随机读取一段文件内容:")

// 打开一个随机访问文件流,按只读方式

randomFile = new RandomAccessFile(fileName, "r")

// 文件长度,字节数

long fileLength = randomFile.length()

// 读文件的起始位置

int beginIndex = (fileLength >4) ? 4 : 0

//将读文件的开始位置移到beginIndex位置。

randomFile.seek(beginIndex)

byte[] bytes = new byte[10]

int byteread = 0

//一次读10个字节,如果文件内容不足10个字节,则读剩下的字节。

//将一次读取的字节数赋给byteread

while ((byteread = randomFile.read(bytes)) != -1){

System.out.write(bytes, 0, byteread)

}

} catch (IOException e){

e.printStackTrace()

} finally {

if (randomFile != null){

try {

randomFile.close()

} catch (IOException e1) {

}

}

}

}

/**

* 显示输入流中还剩的字节数

* @param in

*/

private static void showAvailableBytes(InputStream in){

try {

System.out.println("当前字节输入流中的字节数为:" + in.available())

} catch (IOException e) {

e.printStackTrace()

}

}

public static void main(String[] args) {

String fileName = "C:/temp/newTemp.txt"

ReadFromFile.readFileByBytes(fileName)

ReadFromFile.readFileByChars(fileName)

ReadFromFile.readFileByLines(fileName)

ReadFromFile.readFileByRandomAccess(fileName)

}

}

二、将内容追加到文件尾部

import java.io.FileWriter

import java.io.IOException

import java.io.RandomAccessFile

/**

* 将内容追加到文件尾部

*/

public class AppendToFile {

/**

* A方法追加文件:使用RandomAccessFile

* @param fileName 文件名

* @param content 追加的内容

*/

public static void appendMethodA(String fileName,

String content){

try {

// 打开一个随机访问文件流,按读写方式

RandomAccessFile randomFile = new RandomAccessFile(fileName, "rw")

// 文件长度,字节数

long fileLength = randomFile.length()

//将写文件指针移到文件尾。

randomFile.seek(fileLength)

randomFile.writeBytes(content)

randomFile.close()

} catch (IOException e){

e.printStackTrace()

}

}

/**

* B方法追加文件:使用FileWriter

* @param fileName

* @param content

*/

public static void appendMethodB(String fileName, String content){

try {

//打开一个写文件器,构造函数中的第二个参数true表示以追加形式写文件

FileWriter writer = new FileWriter(fileName, true)

writer.write(content)

writer.close()

} catch (IOException e) {

e.printStackTrace()

}

}

public static void main(String[] args) {

String fileName = "C:/temp/newTemp.txt"

String content = "new append!"

//按方法A追加文件

AppendToFile.appendMethodA(fileName, content)

AppendToFile.appendMethodA(fileName, "append end. n")

//显示文件内容

ReadFromFile.readFileByLines(fileName)

//按方法B追加文件

AppendToFile.appendMethodB(fileName, content)

AppendToFile.appendMethodB(fileName, "append end. n")

//显示文件内容

ReadFromFile.readFileByLines(fileName)

}

}

找回那个加密软燃丛敬件,再解密。

不要说你忘记了密码!如果这样的话,恢复机率很低,几乎不可能。

或说说是什么加密软件,皮慎可能有办法郑裂

你再运行lockdir.exe,它会提示你输入密码,输入密码点确定后文件就会恢复了


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12241568.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-22
下一篇 2023-05-22

发表评论

登录后才能评论

评论列表(0条)

保存