【JAVA】Java文件的读写

Java读写hdfs中的文件 前言 hdfs全称hadoop分布式文件系统,是Apach Hadoop的核心子项目。hdfs适合运行在通用硬件上,其在开源大数据技术体系中地位无可替代。 这篇文章记录了用Java读写hdfs中文件的全过程。 搭建hadoop集群 第一步就是要搭建hadoop集群,让hadoop集群能够成功运行。笔者是在windows环境搭建了hadoop 2.7.7,具体步骤参见:Windows下配置Hadoop环境(全过程) 这篇文章写得十分详细,对流程不再赘述,以下只列出几点原作者没有提到的问题: tmp文件夹可 阅读详情

1. 写文件(PrintWriter)

读与写都要有 File 关键字的配合,如下例:

File file = new File(filepath/name);
if (file.exists()) {
<span style="white-space:pre">	</span>file.delete();
<span style="white-space:pre">	</span>file.createNewFile();
}
else
<span style="white-space:pre">	</span>file.createNewFile();
PrintWriter output = new PrintWriter(file);
StringBuilder sb = new StringBuilder(); 
sb = "This is a test."
output.println(sb);
output.close();
<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">注意 StringBuilder 和 StringBuffer 是差不多的,另外,文件打开后一定配合关闭操作。另,Java 包含 I/O 操作要强制加上 throw Exception ,否则会报错。</span>

2.读文件(Scanner)

File file = new File(filepath/name);
Scanner input = new Scanner(file);
StringBuilder Str = new StringBuilder();
while (input.hasNext()) {
  Str.append(input.NextLine)
}
input.close();

3.例子(读Java文件并写入html文件)

Java文件:

// This application displays welcome to JAVA!
public class Welcome {
	public static void main(String[] args) {
		System.out.println("Welome to JAVA!!!");
	}
}
处理程序:

package Test;

import java.io.File;
import java.io.PrintWriter;
import java.util.Scanner;

public class Ex10 {
	public static void main(String[] args) throws Exception {
//		String string = "//";
//		String string2 = "//";
//		System.out.println(string.equals("//"));
		File readFile = new File("Welcome.java");
		Scanner input = new Scanner(readFile);
		
		StringBuilder output = new StringBuilder();
		output.append("<html>");
		output.append("<head>");
		output.append("<title>This is a test.</title>");
		output.append("<meta http-equiv='Content-Type' content='text/html; charset=utf-8 /'>");
		output.append("<style>");
		output.append(".zhushi{color: grey;}");
		output.append(".guanjianzi{color: red;}");
		output.append(".hanshu{color: blue;}");
		output.append("</style></head>");
		output.append("<body>");
		
		while (input.hasNextLine()) {
			String buffer = input.nextLine();
			String[] strings = buffer.split("[ \n\t\r;,.:?!{()]");
			output.append("<p>");
			for (int i = 0; i < strings.length; i++) {
				System.out.println(strings[i]);
				if (strings[i].equals("//")) {
					output.delete(output.length() - 4, output.length() - 1);
					output.append("<p class='zhushi'>");
				}
				else if (strings[i].equals("public") || strings[i].equals("class")
						|| strings[i].equals("void")) {
					output.append(" <span class='guanjianzi'>" + strings[i] + "</span> ");
				}
				else if (strings[i].equals("main") || strings[i].equals("Wellcome")) {
					output.append(" <span class='hanshu'>" + strings[i] + "</span> ");
				}
				else {
					output.append(" " + strings[i] + " ");
				}
			}
			output.append("</p>");
		}
		output.append("</body></html>");
		input.close();
		
		File writeFlie = new File("Welcome.html");
		if (writeFlie.exists()) {
			writeFlie.delete();
			writeFlie.createNewFile();
		}else {
			writeFlie.createNewFile();
		}
		PrintWriter wriFile = new PrintWriter(writeFlie);
		wriFile.print(output);
		wriFile.close();
		System.out.println("Done");
	}
}
处理结果:





应急响应靶场练习Linux-web-2 本次应急响应靶机采用的是知攻善防实验室的Linux-2应急响应靶机靶机下载地址为:相关账户密码: root/Inch@957821.(第一个为大写的i,记住要带最后的点.)1.该攻击者的IP为192.168.20.12.攻击方式应该是通过/index.php?user-app-register上传了一个webshell,然后使用蚁剑管理webshell之后再次上传version2.php进行提权.3.攻击者修改了phpmyadmin数据库的管理员密码。 阅读详情

相关推荐

SpringBoot实战——仿b站项目(一)

热部署就是当应用程序这种运行的时候升级冉家或者修改某一部分代码、配置文件时,无需手动启动应用,即可修改的部分生效工具 + IDEA配置。

weixin_52880572的博客 3456

C# 扩展方法

扩展方法是一种特殊的静态方法,但可以像扩展类型上的实例方法一样进行调用。 扩展方法被定义为静态方法,但它们是通过实例方法语法进行调用的。 它们的第一个参数指定该方法作用于哪个类型,并且该参数以 this 修饰符为前缀。 扩展方法的要求如下: 1 第一个参数是要扩展或者要操作的类型,这称为"被扩展的类型" 2 为了指定扩展方法,要在被扩展的类型名称前面附加this修饰符 3 要将方法作为一个扩展方法...

丘鸣山的博客 279

【网络安全】Centos7安装杀毒软件----ClamAV

Clam AntiVirus是一个Linux系统上使用的反病毒软件包。主要应用于邮件服务器,采用多线程后台操作,可以自动升级病毒库。

你在看屏幕的同时,屏幕也在注视着你 8828

python3 append(list) 与 append(list[:])的问题

今天用python3写全排列的时候遇到的小问题 def permute(nums): def backtrack(first = 0): if first == n: print(nums) output.append(nums[:]) for i in range(first, n): ...

GUNGOD_P的博客 838

数据分析——员工离职预测

员工离职预测一. 题目描述二. 数据说明三. 步骤实现1.导入并查看2.数据探索性分析3.数据处理4.模型分析5.结果分析(1) 可视化的结果分析(2)特征选择结果分析(3)多模型交叉验证结果分析 一. 题目描述 员工是否准备离职是困扰用人单位的问题,其关系到单位业务的开展及新人员的招聘,及时的分析出有离职倾向的员工成为关键的因素。数据主要包括影响员工离职的各种因素(工资、出差、工作环境满意度、工作投入度、是否加班、是否升职、工资提升比例等)以及员工是否已经离职的对应记录。 二. 数据说明 数据分为训练数据

weixin_43925467的博客 1万+

matsim教程及其案例

MATSim 是一个强大的交通仿真工具,适合研究交通政策、出行行为优化和城市规划。建议从官方示例入手,逐步尝试修改参数和扩展功能。遇到问题时,优先查阅官方文档和社区讨论。(Multi-Agent Transport Simulation Toolkit)的教程和案例资源整理,涵盖基础入门、核心概念、实际应用案例及学习路径。MATSim 是一个开源的、基于多智能体的交通仿真框架,用于模拟城市交通系统中的出行行为、交通流量和交通政策影响。

weixin_70682362的博客 1094

用python实现主范式

1.为了方便计算,可以将中缀表达式转变为后缀表达式(逆波兰式) 方法: (1)创建一个空栈opstack,用于存放运算符,创建一个空列表output用于保存输出结果 (2)使用python字符串的split函数将输入的中缀表达式(infix)字符串分割成列表并存入input列表中。 (3)从左到右遍历input列表的每个元素token 若token是运算数,直接append到output中; 若token是运算符,先判断它与opstack栈顶元素的运算优先级(注:小括号的优先级约定为最低),若:

weixin_64417453的博客 2205

1、基于改进3D卷积神经网络的阿尔茨海默病分类

本文提出了一种基于改进3D卷积神经网络的阿尔茨海默病(AD)分类方法,利用3D CNN对预处理后的T1加权MRI数据进行空间特征提取,并在VGG网络结构中引入类似ResNet的跳跃连接以缓解模型退化和过拟合问题。实验基于ADNI数据集,包含AD、MCI和NC三类样本,结果表明改进后的3D VGG模型在AD/NC、MCI/NC及多分类任务中均取得了优异性能,尤其在AD/MCI/NC分类中准确率达到98.50%,优于现有典型3D深度学习方法。研究验证了3D CNN在脑部疾病诊断中的有效性,并为AD的早期识别提供

kk1234的博客 90

解读tensorflow之rnn

from: http://lan2720.github.io/2016/07/16/%E8%A7%A3%E8%AF%BBtensorflow%E4%B9%8Brnn/ 这两天想搞清楚用tensorflow来实现rnn/lstm如何做,但是google了半天,发现tf在rnn方面的实现代码或者教程都太少了,仅有的几个教程讲的又过于简单。没办法,只能亲自动手一步步研究官方给出的代码了。 本文研

slamer的专栏 9万+

化工热力学软件:Aspen Plus二次开发_(9).过程控制与动态模拟v1

Aspen Plus 提供了丰富的过程控制工具和方法,可以用于静态和动态过程的模拟和控制策略的开发。通过控制回路设计、动态模拟、优化工具和数据交换接口,用户可以设计和优化各种复杂的控制策略,提高化工生产的稳定性和效率。此外,结合外部软件(如MATLAB、Simulink、LabVIEW等),可以实现更高级的控制策略,如自适应控制和模型预测控制,进一步提升过程控制的精度和灵活性。希望本文的内容能帮助用户更好地理解和应用Aspen Plus中的过程控制功能。

kkchenjj的博客 407

Qt Creator牵手DeepSeek,开启AI开发新征程

Qt Creator 是一款功能强大的跨平台集成开发环境(IDE),专为 Qt 应用程序开发量身定制。它支持在编程过程中使用 GitHub Copilot 等编码助手,能帮助开发者为桌面、移动端和嵌入式平台创建软件。在代码编辑方面,Qt Creator 具备代码补全、语法突出显示、重构等功能,内置文档也随手可得,极大提高了代码编写的效率和准确性。

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 7189

1012循环神经网络 RNN 的实现

时间序列预测问题

m0_54028213的博客 929

yolov5直接调用zed相机实现三维测距(python)

zed代码比较简洁,但是一定要把环境配置好,后续自己会把他当做普通双目标定,去对比分析效果,并完善相关功能。

积极向上的mr.d的博客 1万+

Java的文件读写操作

file(内存)----输入流---->【程序】----输出流---->file(内存) 当我们读写文本文件的时候,采用Reader是非常方便的,比如FileReader,InputStreamReader和BufferedReader。其中最重要的类是InputStreamReader, 它是字节转换为字符的桥梁。你可以在构造器重指定编码的方式,如果不指定的话将采用底层操作系统的默认编

jiangxinyu的专栏 30万+

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Java实现本地读写文件

教程目录0x00 教程内容0x01 写本地文件1. 完整代码0x02 读本地文件1. 完整代码0xFF 总结 0x00 教程内容 写本地文件 读本地文件 0x01 写本地文件 1. 完整代码 a. 代码 package com.shaonaiyi.local; import java.io.File; import java.io.FileOutputStream; /** * Java...

邵奈一的博客 2万+

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Java文件读写操作

Java中I/O流对文件的读写有很多种方法,在这里我主要介绍三种方式,供大家参考。 第一种方式:使用FileWriter和FileReader,对文件内容按字符读取,代码如下 String dir = "E:\\soft\\aaa\\a.txt"; File file = new File(dir); //如果文件不存在,创建文件 if (!file.exists()) file.c...

xujia的博客 3万+

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Java中文件读写

Java中文件读写操作的作用是什么? 回答这个问题时应该先想到的是Java只是一门语言,我们的一种使用工具而已,这样答案就明晰了,就是将外来的各种数据写入到某一个文件中去,用以保存下来;或者从文件中将其数据读取出来,供我们使用。就如下电影过程,从网络资源中下载一部电影保存于你电脑中(写文件),当你想看的时候就用播放器打开(读文件)。 Java中如何对文件进行读写操作? 先理一理,

Sunnyfans的专栏 9177

Java文件的读写

java文件读写

m0_50744075的博客 5069

Java读写文件的几种方式

前言 Java中读写文件是非常基本的IO操作了,现在总结一下常见的用法。首先总结一下读取文件的步骤: 根据文件的路径获取到文件File对象 将File对象转换成输入流InputStream 将输入流读出来,读的时候Java提供了相应的Reader类 文件流读完之后一定要关闭。 注意:本文文件的字符集都是UTF-8,如果需要字符集转换的请自行处理。 一:字节流读取方式 一般字节流读取方式用在读取图片或者固定格式文件的方式。 如果是一次读取一个字节方式可以用如下方法: /** * 以字

u011047968的专栏 5936

java基础之读写文件

1.覆盖写入 package javaDemoOne; import java.io.*; import java.util.Scanner; /** * java读写文件 创 写 关 */ public class Demo01 { public static void main(String[] args) throws IOException { //1.创建一个FileW...

qq_28979869的博客 7841

Java中的文件读写

1.文件读写相关的类 (1) java.io.InputStream: 抽象类,输入字节流,可以将本输入流中的字节读取出来。   主要方法: void read(byte[] b):从输入流中读取一定数量的字节,将其存储在缓冲区数组b中。   (2) java.io.OutputStream: 抽象类,输出字节流,可以接收待输出的字节并将这些字节发送到某个接收器。      主要方法:

wangjia55的专栏 7632

java 内存读写文件_Java的文件读写操作

file(内存)----输入流---->【程序】----输出流---->file(内存)当我们读写文本文件的时候,采用Reader是非常方便的,比如FileReader,InputStreamReader和BufferedReader。其中最重要的类是InputStreamReader, 它是字节转换为字符的桥梁。你可以在构造器重指定编码的方式,如果不指定的话将采用底层操作系统的默认编...

weixin_30271235的博客 1506

Java IO读写文件总结——文件随机读写,顺序读写!

顺序IO和随机IO 对于磁盘的读写分为两种模式,顺序IO和随机IO。 随机IO存在一个寻址的过程,所以效率比较低。而顺序IO,相当于有一个物理索引,在读取的时候不需要寻找地址,效率很高。 网上盗了一个图(侵权删) Java中的随机读写 在Java中读写文件的方式有很多种,先总结以下3种方法: FileWriter和FileReader public static void fileWrite(String filePath, String content) { .

zhangkaixuan456的博客 6630

Java 读写一个文件

字符流读写文件、字节流读写文件

lfm1010123的博客 816

Java随机读写文件

本文介绍了Java中的文件随机读写类RandomAccessFile。RandomAccessFile类定义在java.io包中,它与InputStream和OutputStream类在一个层次,是Object类的直接子类。RandomAccessFile类支持文件任意位置的读取而不只是顺序读取。

hitmengfanchao的博客 1388

【Java】Java文件读写

两类文件读写方法

zgsdlr的博客 1035
上一篇: 【jQuery】 ui effects
下一篇: 【JAVA/读书随笔】Chapter 22 算法效率
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值