File/String类常用方法

File(转:王金龙)

java中File类的常用所有方法及其应用
创建:
createNewFile()在指定位置创建一个空文件,成功就返回true,如果已存在就不创建,然后返回false。
mkdir() 在指定位置创建一个单级文件夹。
mkdirs() 在指定位置创建一个多级文件夹。
renameTo(File dest)如果目标文件与源文件是在同一个路径下,那么renameTo的作用是重命名, 如果目标文件与源文件不是在同一个路径下,那么renameTo的作用就是剪切,而且还不能操作文件夹。

删除:
delete() 删除文件或者一个空文件夹,不能删除非空文件夹,马上删除文件,返回一个布尔值。
deleteOnExit()jvm退出时删除文件或者文件夹,用于删除临时文件,无返回值。
判断:
exists() 文件或文件夹是否存在。
isFile() 是否是一个文件,如果不存在,则始终为false。
isDirectory() 是否是一个目录,如果不存在,则始终为false。
isHidden() 是否是一个隐藏的文件或是否是隐藏的目录。
isAbsolute() 测试此抽象路径名是否为绝对路径名。
获取:
getName() 获取文件或文件夹的名称,不包含上级路径。
getAbsolutePath()获取文件的绝对路径,与文件是否存在没关系
length() 获取文件的大小(字节数),如果文件不存在则返回0L,如果是文件夹也返回0L。
getParent() 返回此抽象路径名父目录的路径名字符串;如果此路径名没有指定父目录,则返回null。
lastModified()获取最后一次被修改的时间。

文件夹相关:
static File[] listRoots()列出所有的根目录(Window中就是所有系统的盘符)
list() 返回目录下的文件或者目录名,包含隐藏文件。对于文件这样操作会返回null。
listFiles() 返回目录下的文件或者目录对象(File类实例),包含隐藏文件。对于文件这样操作会返回null。
list(FilenameFilter filter)返回指定当前目录中符合过滤条件的子文件或子目录。对于文件这样操作会返回null。
listFiles(FilenameFilter filter)返回指定当前目录中符合过滤条件的子文件或子目录。对于文件这样操作会返回null。

复制代码
package com.file;

import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;

/**

  • @author 王金龙

  • @date 创建时间: 2017-2-9 上午11:32:40

  • @version 1.0
    */
    public class FileMethod {

    public static void main(String[] args) throws IOException {
    //创建方法
    /* @SuppressWarnings(“unused”)
    File file = new File(“F:\a.txt”);
    //System.out.println(“创建成功了吗?”+file.createNewFile());
    //System.out.println(“单级文件夹创建成功了吗?”+file.mkdir());
    //System.out.println(“多级文件夹创建成功了吗?”+file.mkdirs());
    //File dest = new File(“F:\电影\c.txt”);
    //System.out.println(“重命名成功了吗?”+file.renameTo(dest));
    */

/* //删除方法
File file = new File(“F:\电影”);
System.out.println(“删除成功了吗?”+file.delete());
file.deleteOnExit();
*/

    //判断方法

/* File file = new File(“F:\a.txt”);
System.out.println(“文件或者文件夹存在吗?”+file.exists());
System.out.println(“是一个文件吗?”+file.isFile());
System.out.println(“是一个文件夹吗?”+file.isDirectory());
System.out.println(“是隐藏文件吗?”+file.isHidden());
System.out.println(“此路径是绝对路径名?”+file.isAbsolute());
*/

    //获取方法

/*
File file = new File(“f:\a.txt”);
System.out.println(“文件或者文件夹得名称是:”+file.getName());
System.out.println(“绝对路径是:”+file.getPath());
System.out.println(“绝对路径是:”+file.getAbsolutePath());
System.out.println(“文件大小是(以字节为单位):”+file.length());
System.out.println(“父路径是”+file.getParent());
//使用日期类与日期格式化类进行获取规定的时间
long lastmodified= file.lastModified();
Date data = new Date(lastmodified);
SimpleDateFormat simpledataformat = new SimpleDateFormat(“YY年MM月DD日 HH:mm:ss”);
System.out.println(“最后一次修改的时间是:”+simpledataformat.format(data));
*/

    //文件或者文件夹的方法

    File[] file = File.listRoots();
    System.out.println("所有的盘符是:");
    for(File item : file){
        System.out.println("\t"+item);
    }
    File filename =new File("F:\\Java workspace\\Java");
    String[] name = filename.list();
    System.out.println("指定文件夹下的文件或者文件夹有:");
    for(String item : name){
        System.out.println("\t"+item);
    }
    File[] f = filename.listFiles();
    System.out.println("获得该路径下的文件或文件夹是:");
    for(File item : f){
        System.out.println("\t"+item.getName());
        }

    }

}

String (转:挨点博客)

String类:

String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象。String类对象创建后不能修改,StringBuffer & StringBuilder 类。这时我们会问,为什么我们String变量赋值不就是改变了吗?其实不是的,赋值后将会生成新的对像来存放新的内容,原先的对象依旧在内存中,但是s不在指向它,那么这个对象就会成为垃圾内存,在某一个特定的时刻有Java虚拟机回收。 详情解释请点击 包含在一对双引号之间。

String字符串变量的创建:

声明:  String 变量名;

String str;
声明并初始化:  String 变量名=“初始值”;

String str = “挨点博客”;
String常用方法:

1、int length();  语法:字符串变量名.length();  返回值为 int 类型。得到一个字符串的字符个数(中、英、空格、转义字符皆为字符,计入长度)

    String a="挨点aidian \t\n";
    int l = a.length();
    System.out.println(l);

运行结果:11
2、char charAt(值);  语法 :字符串名.charAt(值);  返回值为 char 类型。从字符串中取出指定位置的字符

String str=“张三疯”;
char c = str.charAt(2);
System.out.println(“指定字符为:” + c);

运行结果:指定字符为:疯

3、char toCharArray();  语法 :字符串名.toCharArray();  返回值为 char 数组类型。将字符串变成一个字符数组

1
2
3
4
String str=“张三疯”;
char c[] = str.toCharArray();
for (int i = 0; i < c.length; i++)
System.out.println(“转为数组输出:” + c[i]);
      运行结果:

转为数组输出:张
转为数组输出:三
转为数组输出:疯

4、int indexOf(“字符”)  语法 :字符串名.indexOf(“字符”);字符串名.indexOf(“字符”,值);查找一个指定的字符串是否存在,返回的是字符串的位置,如果不存在,则返回-1 。

in lastIndexOf(“字符”) 得到指定内容最后一次出现的下标

1
2
3
4
5
6
7
String str=“只为挨你近一点”;
int a1 = str.indexOf(“你”);// 查找字符你的位置
int a2 = str.indexOf(“为”, 2);// 查找为的位置,从第3个开始查找
int a3 = str.lastIndexOf(“点”);
System.out.println(“你的位置为:” + a1);
System.out.println(“为的位置为:” + a2);
System.out.println(“点最后出现的位置为:” + a3);
运行结果:
你的位置为:3

为的位置为:-1

点最后出现的位置为:7

5、toUpperCase(); toLowerCase();字符串大小写的转换

String str=“hello world”;
System.out.println(“将字符串转大写为:” + str.toUpperCase());
System.out.println(“将字符串转换成小写为:” + str.toUpperCase().toLowerCase());

运算结果:
将字符串转大写为:HELLO WORLD
将字符串转换成小写为:hello world

6、String[] split(“字符”)  根据给定的正则表达式的匹配来拆分此字符串。形成一个新的String数组。

String str = “boo:and:foo”;
String[] arr1 = str.split("?;
String[] arr2 = str.split(“o”);
运行结果:
  arr1  //{ “boo”, “and”, “foo” }
  arr2  //{ “b”, “”, “:and:f” }

7、boolean equals(Object anObject)  语法 :字符串变量名.wquals(字符串变量名);  返回值为布尔类型。所以这里用 if 演示。比较两个字符串是否相等,返回布尔值

String str = “hello”;
String str1=“world”;
if(str.equals(str1))
{
System.out.println(“这俩字符串值相等”);
}
else
{
System.out.println(“这俩字符串值不相等”);
}
      运行结果:
          这俩字符串值不相等

复制代码
  8、trim();  去掉字符串左右空格  replace(char oldChar,char newChar);新字符替换旧字符,也可以达到去空格的效果一种。

String str = " 挨点博客 ";
System.out.println(“去掉左右空格后:” + str.trim());

运行结果:
  去掉左右空格后:挨点博客

第二种:
String str = " 挨点博客 “;
System.out.println(“去掉左右空格后:” + str.replace(” “,”"));

运行结果:
  去掉左右空格后:挨点博客

9、String substring(int beginIndex,int endIndex)  截取字符串

String str = “123挨点博客456”;
System.out.println(“截取后的字符为:” + str.substring(0,3));// 截取0-3个位置的内容 不含3
System.out.println(“截取后字符为:” + str.substring(2));// 从第3个位置开始截取 含2

运行结果:
    截取后的字符为:123
    截取后字符为:3挨点博客456

10、boolean equalsIgnoreCase(String) 忽略大小写的比较两个字符串的值是否一模一样,返回一个布尔值

String str = “HELLO WORLd”;
String str1 = “hello world”;
if(str.equalsIgnoreCase(str1))
{
System.out.println(“两个字符串相等”);
}
else
{
System.out.println(“两个字符串不相等”);
}

运行结果:
    两个字符串相等

11、boolean contains(String) 判断一个字符串里面是否包含指定的内容,返回一个布尔值

    String str = "HELLO WORLd";
    String str1 = "WO";
    if(str.contains(str1))
    {
        System.out.println("str内容中存在WO");
    }
    else
    {
        System.out.println("抱歉没找着");
    }

运行结果:
  str内容中存在WO

12、boolean startsWith(String)  测试此字符串是否以指定的前缀开始。返回一个布尔值

String str = “HELLO WORLd”;
String str1 = “HE”;
if(str.startsWith(str1))
{
System.out.println(“str内容中存在HE前缀开头”);
}
else
{
System.out.println(“抱歉没找着”);
}
运行结果:
  str内容中存在HE前缀开头

13、boolean endsWith(String)  测试此字符串是否以指定的后缀结束。返回一个布尔值

    String str = "挨点博客";
    String str1 = "博客";
    if(str.endsWith(str1))
    {
        System.out.println("str内容中存在\'博客\'后缀结束");
    }
    else
    {
        System.out.println("抱歉没找着");
    }

运行结果:
  str内容中存在’博客’后缀结束

14、上面提到了replace方法,接下继续补充一下 String replaceAll(String,String) 将某个内容全部替换成指定内容,   String repalceFirst(String,String) 将第一次出现的某个内容替换成指定的内容

String str = “,,,,,,挨点博客,,,,, “;
System.out.println(“改变后:” + str.replaceAll(”,”,“a”));

运行结果:改变后:a,,,,,挨点博客,,,,,

String str = ",,,,,,挨点博客,帅吗,帅吗,,,,, ";
System.out.println(“改变后:” + str.replaceFirst(“帅吗”,“很帅哦”));

运行结果:改变后:,,,,,,挨点博客,很帅哦,帅吗,,,,,

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值