Java 在指定目录建立指定文件名的文件 并输入内容
1 package runoob;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter; public class FileDemo { public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
String separator=File.separator;
String dir="temp01"+separator+"temp02";
String fileName="hello.txt";
File file=new File(dir, fileName);
if(file.exists()){
System.out.println(file.getAbsolutePath());
System.out.println(file.getName());
System.out.println(file.length());
}else{
file.getParentFile().mkdirs();
try {
file.createNewFile();
} catch (IOException e) {
// TODO: handle exception
e.printStackTrace();
}
} /*String dirname="c:/mysql";
File file=new File(dirname);
if(file.isDirectory()){
System.out.println("Directory of "+dirname);
String[] strings=file.list();
for(int i=0;i<strings.length;i++){
File f=new File(dirname+"/"+strings[i]);
if(f.isDirectory()){
System.out.println(strings[i]+" is a directory");
}else{
System.out.println(strings[i]+" is a file");
}
}
}else{
System.out.println(dirname+" is not a directory!");
}*/ /*System.out.println("file是一个文件:"+file.isFile());
System.out.println("file是一个目录:"+file.isDirectory());
System.out.println("file的文件名:"+file.getName());
File parentFile=file.getParentFile();
System.out.println("parentFile是一个目录:"+parentFile.isDirectory());
System.out.println("parentFile是一个文件:"+parentFile.isFile()); */
/*if(file.isDirectory()){
System.out.println("File是一个目录!");
if(file.exists()){
System.out.println("文件夹已存在!");
}else{
System.out.println("文件夹不存在");
file.mkdirs();
if(file.exists())
System.out.println("文件夹已创建!");
}
} if(file.isFile()){
System.out.println("File是一个文件!");
if(file.exists()){
System.out.println("文件已存在!");
}else {
System.out.println("文件不存在");
File file2=new File(file.getParent());
if(file2.exists()){
System.out.println("该文件的目录已存在!");
file.createNewFile();
System.out.println("文件已创建!");
}else {
file2.mkdirs();
System.out.println("文件目录已建立!");
file.createNewFile();
System.out.println("文件已建立!");
}
}
}*/ /*if(file.exists()){
System.out.println("文件夹存在!");
if(file.isDirectory()){
System.out.println("文件存在!");
}else{
file.createNewFile();
System.out.println("文件不存在,已创建文件!");
}
}else{
System.out.println("文件夹不存在!");
File file2=new File(file.getParent());//获取指定文件的上层目录,用来创建文件夹~
System.out.println("file2是一个目录:"+file2.isDirectory()+" \nfile2是一个文件:"+file2.isFile());
file2.mkdirs();
file.createNewFile();//文件夹不存在,对应文件肯定也不存在咯,所以要新建!
}*/ //这里插入一句,mkdirs()和mkdir()的区别在于,前者可以建立多级文件夹,后者只会建立一级文件夹。比如:
//new File("c:/temp/user/hehe").mkdirs()会建立三级目录,直到hehe。
//new File("c:/temp/user/hehe").mkdir()只会建立一级目录,hehe,如果前面两级目录不存在,则返回false!
// FileOutputStream fOutputStream=new FileOutputStream(file);
OutputStreamWriter writer=new OutputStreamWriter(fOutputStream, "utf-8");
writer.append("中文输入+English");
writer.append("\r\n");
writer.append("English");
writer.close();
fOutputStream.close(); FileInputStream fInputStream=new FileInputStream(file);
InputStreamReader reader=new InputStreamReader(fInputStream,"UTF-8");
StringBuilder sBuilder=new StringBuilder();
while(reader.ready()){
sBuilder.append((char)reader.read());
}
System.out.println(sBuilder.toString());
reader.close();
fInputStream.close(); } }
经过学习,我发现:
File file=new File(fileName);
如果fileName是一个文件名,比如c:/temp/hello.txt,那么这个File对象既不是一个file也不是directory,不晓得怎么回事。File对象貌似只是一个目录,可以包含文件和文件夹。
而使用new File(dir, fileName)构造方法建立的File对象则是一个file,文件。不是一个目录。
如果您觉得感兴趣的话,可以添加我的微信公众号:一步一步学Python
![](http://images2017.cnblogs.com/blog/993869/201711/993869-20171118215516327-881787609.jpg)
Java 在指定目录建立指定文件名的文件 并输入内容的更多相关文章
- Java 读取指定目录下的文件名和目录名
需求:读取指定目录下的文件名和目录名 实现如下: package com.test.common.util; import java.io.File; public class ReadFile { ...
- Java基础知识强化之IO流笔记49:IO流练习之 复制指定目录下指定后缀名的文件并修改名称的案例
1. 复制指定目录下指定后缀名的文件并修改名称的案例 需求:复制指定目录下的指定文件,并修改后缀名. • 指定的文件是:.java文件. • 指定的后缀名是:.jad • 指 ...
- python获取指定目录下所有文件名os.walk和os.listdir
python获取指定目录下所有文件名os.walk和os.listdir 觉得有用的话,欢迎一起讨论相互学习~Follow Me os.walk 返回指定路径下所有文件和子文件夹中所有文件列表 其中文 ...
- Python--通过索引excel表将文件进行文件夹分类的脚本+读取指定目录下所有文件名的脚本
1.通过索引excel表将文件进行文件夹分类的脚本,此脚本由于将ip和id对应并生成对应id的文件夹将文件进行分类,也可以任意规定表格内容,通过vul_sc_ip.txt和xlsx文件进行索引. # ...
- 我的Android进阶之旅------>Android使用正则表达式匹配扫描指定目录下的所有媒体文件(音乐、图像、视频文件)
今天使用正则表达式匹配指定目录下的所有媒体文件,下面将这份代码简化了,可以收藏下来,当作工具类. package match; import java.io.File; import java.uti ...
- 一个获取指定目录下一定格式的文件名称和文件修改时间并保存为文件的python脚本
摘自:http://blog.csdn.net/forandever/article/details/5711319 一个获取指定目录下一定格式的文件名称和文件修改时间并保存为文件的python脚本 ...
- delphi遍历指定目录下指定类型文件的函数
遍历指定目录下指定类型文件的函数// ================================================================// 遍历某个文件夹下某种文件,/ ...
- python中获取指定目录下所有文件名列表的程序
http://blog.csdn.net/rumswell/article/details/9818001 # -*- coding: utf-8 -*-#~ #------------------- ...
- Linux find查找指定文件 按照名称 然后cp拷贝到指定目录且指定文件名
最近有一个需求,需要将指定目录下的文件(已知文件名)复制到另一个指定的目录且重命名文件. 要求: 在var目录下会定义系统的启动日志相关信息,请查找对应的boot.log文件,并把它备份一份到var/ ...
随机推荐
- 【FPGA】【代码】资源优化,结构优化
资源优化 原始资源 定义时初始化和复位电路初始化都起作用,删除定义的初值后 将always块描述的组合逻辑变为时序逻辑后
- 计算机网络(8)-----TCP报文段的首部格式
TCP报文段的首部格式 概述 TCP报文段首部的前20个字节是固定的,因此TCP首部的最小长度是20字节. 源端口和目标端口 各占2个字节,分别写入源端口号和目的端口号. 序列号 占4个字节,表示本报 ...
- JSP基础语法---九九乘法表-java jsp
<%@ page language="java" import="java.util.*" contentType="text/html; ch ...
- 使用GridVIew显示Gantt(甘特图),动态增减列
说明:本例是做了工厂的排机报表 一.根据查询日期初始化GridView列 private void IniGridView(DateTime p_DateS,DateTime p_DateE) { / ...
- Also unsere eigene Christian Louboutin Webshop bietet die überragende Christian Louboutin Schuhe uk schiebt zusammen mit kostengünstigen Wert
www.heelschuhe.de, Es ist wirklich eine der Frauen erfordern immer interessant und auch Louboutin Pu ...
- MyBatis3学习--来源自用户指南
MyBatis是什么? MyBatis 是一款一流的支持自定义SQL.存储过程和高级映射的持久化框架. MyBatis几乎消 除了所有的JDBC 代码,也基本不需要手工去设置参数和获取检索结果. My ...
- Html标签第一课
<p>段落标签</p> <h1>字体标签,1到6,越来越小</h1>.....<h6></h6><h>标签自动换行 ...
- Linq中关键字的作用及用法
Linq中关键字的作用及用法 1.All:确定序列中的所有元素是否都满足条件.如果源序列中的每个元素都通过指定谓词中的测试,或者序列为空,则为 true:否则为 false. Demo: 此示例使用 ...
- mysql,node.js
var mysql = require('mysql'); var pool = mysql.createPool({ host: 'localhost', user: 'root', passwor ...
- maven的使用体验
由于之前是从C++代码阵营中转到java阵营的(这里可能还会转到scala阵营中).在写工程代码的时候,如果是只是简单的创建java project的话,当然也是可以的.但是,随着项目慢慢扩大,组件越 ...