Java对各种文件的操作详解

微服务架构下Spring Gateway+Sa-Token+Nacos认证鉴权实践 微服务架构中的认证与鉴权是保障系统安全的核心机制。认证解决身份验证问题,鉴权控制资源访问权限。传统单体应用的Session机制在分布式环境下面临跨服务身份传递、权限动态管理等挑战。通过Spring Gateway实现统一入口拦截,结合Sa-Token的轻量级会话管理,配合Nacos配置中心的动态推送能力,可构建高效的微服务安全体系。该方案在电商、金融等领域有广泛应用,能显著降低安全模块代码量,实现权限秒级生效,提升系统整体安全性。关键技术点包括JWT令牌验证、OAuth2.0集成和Redis缓存优化。 阅读详情
java中提供了io类库,可以轻松的用java实现对文件的各种操作。下面就来说一下如何用java来实现这些操作。
 
新建目录<%@ page contentType="text/html;charset=gb2312"%>
<%
//String URL = request.getRequestURI();
String filePath="C://测试//";
filePath=filePath.toString();//中文转换
java.io.File myFilePath=new java.io.File(filePath);
if(!myFilePath.exists())
myFilePath.mkdir();
%>
 
新建文件
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.io.*" %>
<%
String filePath="c:/测试/newFile.txt";
filePath=filePath.toString();
File myFilePath=new File(filePath);
if(!myFilePath.exists())
myFilePath.createNewFile();
FileWriter resultFile=new FileWriter(myFilePath);
PrintWriter myFile=new PrintWriter(resultFile);
String content ="这是测试数据";
String strContent = content.toString();
myFile.println(strContent);
resultFile.close();
%>
 
删除文件<%@ page contentType="text/html;charset=gb2312"%>
<%
String filePath="c://测试//newFile.txt";
filePath=filePath.toString();
java.io.File myDelFile=new java.io.File(filePath);
if(myDelFile.exists())
{  
    myDelFile.delete();
    out.println(filePath+"删除成功!!!");
}
else
{
    out.println(filePath+"该文件不存在");
}
%>
文件拷贝<%@ page contentType="text/html; charset=gb2312" %>
<%@ page import="java.io.*" %>
<%
int bytesum=0;
int byteread=0;
//file:读到流中
InputStream inStream=new FileInputStream("c://测试//newFile.txt");
FileOutputStream fs=new FileOutputStream( "c://测试//copyFile.txt");
byte[]  buffer =new  byte[1444];
int length;
while ((byteread=inStream.read(buffer))!=-1)
 {
   out.println("<DT><B>"+byteread+"</B></DT>");
   bytesum+=byteread;
   out.println(bytesum);
   fs.write(buffer,0,byteread);
 }
inStream.close();
%>
 
整个文件夹拷贝
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.io.*" %>
<%String url1="C:/aaa";
  String url2="d:/java/";
  (new File(url2)).mkdirs();
 File[] file=(new File(url1)).listFiles();
 for(int i=0;i<file.length;i++){
  if(file[i].isFile()){
   file[i].toString();
   FileInputStream input=new FileInputStream(file[i]);
   FileOutputStream output=new FileOutputStream(url2+"/"+(file[i].getName()).toString());
   byte[] b=new byte[1024*5];
    int len;
    while((len=input.read(b))!=-1){
    output.write(b,0,len);
    }
    output.flush();
    output.close();
    input.close();
  }
 }
%>
 
文件下载
<%@ page contentType="text/html; charset=gb2312"%>
<%@ page import="java.io.*" %>
<%
  String fileName = "newFile.txt".toString();
  //读到流中
  InputStream inStream=new FileInputStream("c://测试//newFile.txt");
  //设置输出的格式
  response.reset();
  response.setContentType("text/plain");
  response.addHeader("Content-Disposition","attachment; filename=/"" + fileName + "/"");
  //循环取出流中的数据
  byte[] b = new byte[100];
  int len;
  ServletOutputStream outStream = response.getOutputStream();
 
  while((len=inStream.read(b)) >0)
  outStream.write(b,0,len);
  outStream.flush();
  outStream.close();
  inStream.close();
%>
 
数据库字段中的文件下载
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.util.*,java.sql.*,java.io.*"%>
<%
    String id = request.getParameter("id");
    if(id==null)
    {   throw new Exception ("没有找到图片");
    }
    else
    {
       try
       {
com.gzrealmap.lib.jdbc.JDBCUtil  SqlBean= com.gzrealmap.lib.jdbc.JDBCUtil.getInstance();
               SqlBean.connect();
               String sql = "select * from innernews where id = '"+79+"'";
               ResultSet rs = SqlBean.queryforUpdate(sql);
               rs.next();
               //String fileNamedb = rs.getString("imageName");
               String file= rs.getString("acc");
               //String fileName = new String(fileNamedb.getBytes(),"iso-8859-1");
               String fileName = "a.jpg";
                response.setHeader("Content-Disposition",  "inline; filename=/"" + fileName + "/"");    
               String filter = fileName.substring(fileName.lastIndexOf("."));
              
               if(filter.equals(".txt"))
               {
                   response.setContentType("text/plain");
               }
               else if(filter.equals(".doc")||filter.equals(".dot"))
               {
                   response.setContentType("application/msword");
               }
               else
               {
                 response.setContentType("image/jpeg;charset=GB2312");
               }
               ServletOutputStream o = response.getOutputStream();
               //o.write(file);
               out.println(file);
               //o.flush();
               //o.close();
               SqlBean.disconnect();
       }
        catch(Exception ex)
       {
           out.println(ex.getMessage());
       }
    }  
%>
 
把网页保存成文件<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.text.*,java.util.*,java.net.*,java.io.*"%>
<%
 URL stdURL = null;
 BufferedReader stdIn = null;
 PrintWriter stdOut = null;
 try {
  stdURL = new URL(" http://www.163.com");
 }
 catch (MalformedURLException e) {
   throw e;
 }
 
try {
    //将字节流转变成为字符流
    stdIn = new BufferedReader(new InputStreamReader(stdURL.openStream()));
    String theFileName = "c://测试//163.html";
    stdOut = new PrintWriter(new BufferedWriter(new FileWriter(theFileName.toString())));
 }
 catch (IOException e) {
 }
 
 /***把URL指定的页面以流的形式读出,写成指定的文件***/
 try {
    String strHtml = "";
   while((strHtml = stdIn.readLine())!=null) {
   stdOut.println(strHtml);
   }
 }
 catch (IOException e) {
   throw e;
 }
 finally {  
   try {
     if(stdIn != null)
       stdIn.close();
     if(stdOut != null)
       stdOut.close();
       }
   catch (Exception e) {
     System.out.println(e);
   }
 }
%>
 
直接下载网上的文件
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.io.*"%>
<%@ page import="java.net.*"%>
<%
  int bytesum=0;
  int byteread=0;
  URL url = new URL(" http://pimg.163.com/sms/micheal/logo.gif");
  URLConnection conn = url.openConnection();
  InputStream inStream = conn.getInputStream();
 
  /**
  String theFileName = "c:/测试/logo.gif";
  theFileName = theFileName.toString();
  File myFilePath=new File(theFileName);
  if(!myFilePath.exists())
  myFilePath.createNewFile();
  **/
 
  FileOutputStream fs=new FileOutputStream("c:/测试/logo2.gif");
  byte[]  buffer =new  byte[1444];
    while ((byteread=inStream.read(buffer))!=-1)
    {
       out.println("<DT><B>"+byteread+"</B></DT>");
       bytesum+=byteread;
       //System.out.println(bytesum);
       fs.write(buffer,0,byteread);
     }
%>
 
按行读文件 <%@ page contentType="text/html; charset=gb2312" %>
<%@ page import="java.io.*" %>
<%
FileReader myFileReader=new FileReader("c:/哈哈.txt");
BufferedReader myBufferedReader=new BufferedReader(myFileReader);
String myString=null;
String resultString=new String();
while((myString=myBufferedReader.readLine())!=null) {
resultString=resultString+myString+"<br>";
}
out.println(resultString);
myFileReader.close();
%>
 
对word文档的处理(上传与下载)<%@ page contentType="application/msword" %>
<!-- 以上这行设定本网页为excel格式的网页 -->
<%
   response.setHeader("Content-disposition","inline; filename=test1.doc"); //线上浏览方式
  // response.setHeader("Content-disposition","attachment; filename=test1.doc");//下载方式
   //以上这行设定传送到前端浏览器时的档名为test1.doc
   //就是靠这一行,让前端浏览器以为接收到一个word档
%>
//然后输出动态内容就可以得到一个word文档了
 
1,打开:
1)文件头上加:<%@ page  contentType="application/msword"%> 
xml文件里:
<mime-mapping>
        <extension>doc</extension>
        <mime-type>application/msword</mime-type>
</mime-mapping>
2)可以用js,以下代码来自引用:
<%@ page contentType="text/html;charset=gb2312" import= "java.io.*"%>
<HTML>
<script>
var wrd=new ActiveXObject("Word.Application")
wrd.visible=true
alert("您的"+wrd.Application.Caption+"安装路径为:/n"+wrd.Application.Path+"/n版本号是:"+wrd.Application.version+"/n注册使用者是:"+wrd.Application.UserName)
wrd.Documents.Add()
//wrd.Documents.Open("c://exam.doc")
wrd.Selection.TypeText("This is some text.")
wrd.Application.Activate()
wrd.ActiveDocument.SaveAs("c://exam111.doc")
wrd=null
</script>
</HTML>
 
2,下载:
<%@ page contentType="text/html;charset=gb2312" import= "java.io.*"%>
<%// 得到文件名字和路径
  String filename = "jsp.doc";
  String filepath = "C://";
 
  // 设置响应头和下载保存的文件名
  response.setContentType("APPLICATION/OCTET-STREAM");
  response.setHeader("Content-Disposition","attachment; filename=/"" + filename + "/"");
 
  // 打开指定文件的流信息
  java.io.FileInputStream fileInputStream = new java.io.FileInputStream(filepath + filename);
  //FileOutputStream out  = new FileOutputStream(filepath+"测试//" + filename);
  // 写出流信息
  int i;
  while ((i=fileInputStream.read()) != -1) {
   out.write(i);
  }
  fileInputStream.close();
  out.close();
 %>
java调用dot文件的实现方式 在java代码中的具体调用方法,结合GraphViz使用 立即下载

相关推荐

PICO+Unity MR空间网格开发实战:从零构建透视交互场景

本文详细介绍了使用PICO 4 Ultra与Unity引擎进行MR空间网格开发的完整实战流程。从环境准备、项目初始化、核心组件配置,到空间网格的生成、可视化与物理交互实现,手把手教你构建一个能识别真实环境并发射虚拟小球的透视交互场景。文章重点解析了PICO SDK中空间网格功能的关键配置与优化技巧,并提供了真机部署与调试的实用指南。

e3f4g5的博客 491

Java编程笔记29:JSP

就像在上篇中展示的那样,要向客户端输出一个页面,最简单的方式是直接用Java代码向输出流写入Html代码。这样的方式虽然简单直观,但存在很多隐患,而且很难用于编写复杂的Html代码。此时我们就需要其他技术来输出Html页面,JSP就是早期的其中一种方式。JSP是Java Server Pages的缩写,是Java服务器用于“组装”和生成Html页面的技术。其写法和作用与其它语言中常见的模版语言类似。利用JSP,我们可以很容易地将Java代码嵌入静态的Html代码中。

梦幻天空 329

Win11 WSL2 Ubuntu 18.04 ROS Gazebo 图形渲染性能调优:从LLVM到NVIDIA GPU的完整指南

本文详细解决了在Win11 WSL2 Ubuntu 18.04环境中运行ROS Gazebo时图形渲染卡顿的问题。通过诊断默认LLVM软件渲染的瓶颈,指导用户更新Mesa驱动PPA源,并关键性地设置环境变量以强制启用NVIDIA GPU硬件加速,最终显著提升仿真性能与流畅度。

weixin_29204749的博客 284

Java——文件操作

File类在包java.io.File下,代表操作系统的文件对象(文件、文件夹File类提供了:定位文件,获取文件本身的信息、删除文件、创建文件(文件夹)等功能File类创建对象名称说明根据文件路径创建对象从父路径名字符串和子路径名字字符串创建文件对象根据父路径对应文件对象和子路径名字字符串创建对象File对象可以定位文件和文件夹File封装的对象仅仅是一个路径名,这个路径可以是存在的,也可以是不存在的Demo。

Java学不会的博客 5004

保姆级教程:用Kalibr搞定Intel D435i三目(RGB+双目)相机联合标定,附完整ROSbag录制避坑指南

本文详细介绍了如何使用Kalibr工具对Intel D435i三目相机(RGB+双目)进行高精度联合标定,包括硬件准备、ROSbag录制技巧、Kalibr标定实战及结果验证。特别针对实际工程中的常见问题提供了解决方案,帮助开发者提升SLAM和三维重建等应用的精度。

weixin_42524762的博客 407

ECharts 实现世界地图

效果图 源代码(仅供参考) <template> <div class="echarts"> <div class="className" id="id" style="width: 100%; height: 450px" ref="myEchart" ></div> </div> </template> <script lang="ts"> imp

EsquireY的博客 4876

Java语言对文件操作

File对象表示路径,可以是文件,也可以是文件夹。这个路径可以是存在的,也可以是不存在的。

m0_62357943的博客 169

AI提示词注入绕过工具:一键绕过Codex/Claude安全限制,CTF夺旗与渗透测试必备神器

【摘要】codex-session-patcher是一款专为CTF选手设计的AI会话修复工具,能智能处理AI的拒绝回复问题。核心功能包括:两级拒绝检测策略、AI智能改写回复、批量清理会话记录、推理内容擦除与备份还原,并支持Codex/ClaudeCode/OpenCode三大平台。工具提供CLI和WebUI两种操作方式,支持CTF提示词注入和工作空间管理,可显著降低AI拒绝率。最新版本优化了CTF模板加载机制,修复了路径漂移等问题。典型工作流包含安装CTF配置、专用环境启动、会话清理和恢复对话等步骤,帮助安

Chengbei11的博客 3106

Java实现文件操作

在计算机中,通常都需要文件系统来管理文件,文件系统中通过“树形” 组织文件和目录,文件可以分为文本文件和二进制文件,如果文件记事本打开出现乱码就是二进制文件,否则就是文本文件,常见的二进制文件有:.txt,.c,.java等;常见的文本文件有:.doc,.jpg,.class以及office系列的一些文件。在文件系统中,文件的路径可以分为绝对路径和相对路径。绝对路径:就是从根目录开始到文件,也就是从盘符开始的文件,例如:D:\bin\aa\c.txt。

m0_62404808的博客 2508

巧妙解决网页弹窗重复出现问题

本文探讨了网页弹窗关闭后刷新重现的问题及解决方案。通过分析原生JavaScript实现的弹窗代码存在的缺陷,提出了使用jQuery改进的方法。关键点包括:利用event.preventDefault()阻止默认行为避免刷新,采用jQuery的hide("slow")方法实现优雅的关闭动画,确保关闭状态持久化。改进后的方案既解决了弹窗重复出现的问题,又提升了用户体验,为网页弹窗交互提供了更优的实现方式。文中提供了完整的HTML、CSS和JavaScript代码示例,便于开发者直接应用。

2501_90323865的博客 182

基于Simulink的超级电容与锂电池混合储能协调控制仿真

摘要:本文介绍基于Simulink的光伏-混合储能系统(HESS)建模与仿真方法,通过超级电容和锂电池的协同控制实现功率平抑。系统采用直流耦合架构,利用一阶低通滤波法将总功率分解为低频(锂电池承担)和高频分量(超级电容承担),并设计SOC自平衡机制维持超级电容工作点。仿真结果表明,该方案可使锂电池电流波动降低62%,光伏功率波动率降至7.5%,有效延长电池寿命。文章详细展示了从主电路搭建、功率分配到闭环控制的完整实现步骤,为新能源系统储能优化提供实用参考。

amy_mhd的博客 136

【Java系列】文件操作详解

【Java系列】文件操作详解

m0_74352571的博客 2909

《从底层结构开始学习FPGA》目录与传送门

《从底层结构开始学习FPGA》目录与传送门

孤独的单刀 16万+

Java对各种文件的操作详解.pdf

Java对各种文件的操作详解.pdf 下载

金佳杰 161

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

java对文件的操作详解,[冷枫]Java对各种文件的操作详解

Java对各种文件的操作详解作者:冷枫 来源:优快云 2007年9月23日关键字:第1页:[冷枫]Java对各种文件的操作详解第2页:[冷枫]Java对各种文件的操作详解数据库字段中的文件下载String id = request.getParameter("id");if(id==null){ throw new Exception ("没有找到图片");}else{try{com.gzr...

weixin_42183486的博客 119

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

JAVA |日常开发中操作文件详解

JAVA |日常开发中操作文件详解,在日常的Java开发中,操作文件是一个非常重要的技能。无论是读取配置文件、写入日志文件、处理用户上传的文件,还是进行数据的持久化存储,文件操作都是必不可少的。本文将详细介绍Java中如何操作文件,包括文件的创建、读取、写入、删除以及文件目录的操作等。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 1914

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

【Java 基础篇】Java 文件及文件夹操作详解

总结一下,文件和文件夹操作是Java编程中常见的任务。通过本文的介绍,你现在应该能够执行基本的文件和文件夹操作,包括读取、写入、复制、移动、删除文件,以及创建、列出、删除文件夹。同时,了解如何处理异常是确保程序稳定性的关键。希望这篇文章对你有所帮助,让你更好地理解和应用Java中的文件和文件夹操作。如果你有任何问题或需要进一步的帮助,请随时咨询。

繁依Fanyi的博客 3206

java对文件的操作详解_Java对各种文件的操作详解

java中提供了io类库,可以轻松的用java实现对文件的各种操作。下面就来说一下如何用java来实现这些操作。新建目录//StringURL=request.getRequestURI();StringfilePath="C:\\测试\\";filePath=filePath.toString();//中文转换java.io.FilemyFilePath=newjava.io.Fil...

weixin_42298352的博客 224

java对各种文件的操作详解

[size=medium][code="java"]java中提供了io类库,可以轻松的用java实现对文件的各种操作。下面就来说一下如何用java来实现这些操作。 新建目录 新建文件 删除文件 文件拷贝 整个文件夹拷贝 数据库字段中的文件下载 把网页保存成文件 直接下载网上的文件...

zhangyonzhi的专栏 148

Java文件操作详解

Java文件操作详解输入输出流 在Java中,我们把能够读取一个字节序列的对象称作一个输入流;而我们把够写一个字节序列称作一个输出流。它们分别由抽象类 InputStream和OutputStream类表示。因为面向字节的流不方便用来处理存储为Unicode(每个字符使用两个字节)的信息。所以Java 引入了用来处理Unicode字符的类层次,这些类派生自抽象类Reader和Writer,它们用于

风流浪子的专栏 787

java对文件的操作详解,java对各种文件的操作详解

java中提供了io类库,可以轻松的用java实现对文件的各种操作。下面就来说一下如何用java来实现这些操作。新建目录//String URL = request.getRequestURI();String filePath="C:\\测试\\";filePath=filePath.toString();//中文转换java.io.File myFilePath=new java.io.Fil...

weixin_32942557的博客 178

java的文件操作详解

11.3 I/O类使用          由于在IO操作中,需要使用的数据源有很多,作为一个IO技术的初学者,从读写文件开始学习IO技术是一个比较好的选择。因为文件是一种常见的数据源,而且读写文件也是程序员进行IO编程的一个基本能力。本章IO类的使用就从读写文件开始。 11.3.1 文件操作          文件(File)是 最常见的数据源之一,在程序中经常需要将数据存储到文

806
上一篇: 表现层框架Struts/Tapestry/JSF架构比较
下一篇: JSP初学者看的好文章[推荐]
JavaProgramers
博客等级 码龄22年 660粉丝 304原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值