java 批量读取并修改文件名称。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 批量读取并修改文件名称。相关的知识,希望对你有一定的参考价值。

用JAVA读取特定文件夹下的文件名称,并根据数据库中对应的名称指修改文件名。
(注:数据库中表字段为文件名称、学号。文件名称为主键)
需要把文件名称改为学号。
急~~~~~~~~对了多加分哈~~~~~··!!
for(String oldName:list) 是什么意思啊?老兄!

参考技术A 写好的,你自己看着作一点修改就行
import java.io.*;
import java.sql.*;
public class RenameFile

File parentFile;
public RenameFile(File parentFile)

this.parentFile = parentFile;
readDataBase(parentFile.list());

private void readDataBase(String[] list)//这个函数里读数据库的方式可能跟你的不一样,自己看着改改

for(String oldName:list)

try

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn = DriverManager.getConnection("jdbc:odbc:DSN","","");//DSN是数据源名字
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery("Select * from TABLENAME where FILENAME = "+oldName);//TABLENAME是数据库里表的名字,FILENAME是表示文件名的字段的名字
while (rs.next())

String newName = rs.getString("NUMBER");//NUMBER是表示学号的字段,getString要根据你定义的数据类型作改动为getInt或其他
rename(oldName,newName);


catch (Exception e)

e.printStackTrace();



private void rename(String oldName, String newName)

try

File source = new File(parentFile.toString()+"\\"+oldName);
File target = new File(source.getParent()+"\\"+newName);
boolean res = source.renameTo(target);

catch (Exception e)

e.printStackTrace();


public static void main(String [] args)

String path = "path";//这里把path改成文件夹的路径
File file = new File(path);
new RenameFile(file);



_______________________________
for(String oldName:list)
这个是java 5.0以后才出现的新语法,也是一种循环,这个循环的次数是list的元素个数,用oldName作为临时变量,指代list中的每一个元素。
当然你也可以这样写:
for(int i=0, i<list.length(), i++)本回答被提问者采纳
参考技术B 先读取,然后循环比较!循环更新!就行了!不过在指定循环比较的时候,找到相应的要break出去,就不会被覆盖掉了!

Android中如何设置SharedPreference文件名称?

Android创建SharedPreference Activity后,一般都自动生成xml文件(包名_preference.xml)
如何自己设置这个xml文件名称?

获取SharedPreference对象函数如下:

public abstract SharedPreferences getSharedPreferences (String name, int mode);

其中name代表名称,mode代表文档的操作权限模式(私有,可读,可写)。因此只要在获取时设置name即可。

扩展资料

1、数据读取:

通过SharedPreferences对象的键key可以获取到对应key的键值。对于不同类型的键值有不同的函数:

getBoolean,getInt,getFloat,getLong.

public abstract String getString (String key, String defValue);

2、数据存入:

数据的存入是通过SharedPreferences对象的编辑器对象Editor来实现的。通过编辑器函数设置键值,然后调用commit()提交设置,写入xml文件。

public abstract SharedPreferences.Editor edit ();

public abstract SharedPreferences.Editor putString (String key, String value);

public abstract boolean commit ();

参考技术A 1、android文件存储
对Android系统了解的都知道,Android系统有四种基本的数据保存方法,一是SharedPreference,二是文件,三是SQLite,四是ContentProvider。看出来了吧,Preference,对就是使用SharedPreferneces以键值对的形式进行保存的。
2、SharedPreferneces
做软件开发应该都知道,很多软件会有配置文件,里面存放这程序运行当中的各个属性值,由于其配置信息并不多,如果采用数据库来存放并不划算,因为数据库连接跟操作等耗时大大影响了程序的效率,因此我们使用键值这种一一对应的关系来存放这些配置信息。SharedPreferences正是Android中用于实现这中存储方式的技术。
SharedPreferences是以键值对的形式存储数据的,其使用非常简单,能够轻松的存放数据和读取数据。

在具体介绍Android的设置界面的实现之前,我们先来介绍一下预备知识,就是Android数据持久化方法中最简单的一种,即使用Preferences的键值对存储方式。这种方式主要用来存储比较简单的一些数据,而且是标准的Boolean、Int、Float、Long、String等类型。
android.content.SharedPreferences是一个接口,用来获取和修改持久化存储的数据。有三种获取系统中保存的持久化数据的方式:
1). public SharedPreferences getPreferences (int mode)
通过Activity对象获取,获取的是本Activity私有的Preference,保存在系统中的xml形式的文件的名称为这个Activity的名字,因此一个Activity只能有一个,属于这个Activity。
2). public SharedPreferences getSharedPreferences (String name, int mode)
因为Activity继承了ContextWrapper,因此也是通过Activity对象获取,但是属于整个应用程序,可以有多个,以第一参数的name为文件名保存在系统中。
3). public static SharedPreferences getDefaultSharedPreferences (Context context)
PreferenceManager的静态函数,保存PreferenceActivity中的设置,属于整个应用程序,但是只有一个,Android会根据包名和PreferenceActivity的布局文件来起一个名字保存。
通过以上方式取得SharedPreferences后就可以对数据进行读取或者保存了。
参考技术B SharedPreferences preferences = this.getSharedPreferences("config", MODE_PRIVATE);
前一个参数config就是xml文件名称.

以上是关于java 批量读取并修改文件名称。的主要内容,如果未能解决你的问题,请参考以下文章

java怎么修改文件名称

mol2文件分子名称的批量修改

java 如何批量修改一张表里面多条数据的某个字段的值,需要修改的字段值是自定义的。

将文件夹名称批量修改为指定名称

批量修改JS文件名称.

百度网盘盘批量修改文件名称云盘重命名手机