java屬性文件
⑴ 配置文件在java 中怎麼創建
1.一般在scr下面新建一個屬性文件*.properties,如a.properties
然後在Java程序中讀取或操作這個屬性文件。
代碼實例
屬性文件a.properties如下:
name=root
pass=liu
key=value
讀取a.properties屬性列表,與生成屬性文件b.properties。代碼如下:
1 import java.io.BufferedInputStream;
2 import java.io.FileInputStream;
3 import java.io.FileOutputStream;
4 import java.io.InputStream;
5 import java.util.Iterator;
6 import java.util.Properties;
7
8 public class PropertyTest {
9 public static void main(String[] args) {
10 Properties prop = new Properties();
11 try{
12 //讀取屬性文件a.properties
13 InputStream in = new BufferedInputStream (new FileInputStream("a.properties"));
14 prop.load(in); ///載入屬性列表
15 Iterator<String> it=prop.stringPropertyNames().iterator();
16 while(it.hasNext()){
17 String key=it.next();
18 System.out.println(key+":"+prop.getProperty(key));
19 }
20 in.close();
21
22 ///保存屬性到b.properties文件
23 FileOutputStream oFile = new FileOutputStream("b.properties", true);//true表示追加打開
24 prop.setProperty("phone", "10086");
25 prop.store(oFile, "The New properties file");
26 oFile.close();
27 }
28 catch(Exception e){
29 System.out.println(e);
30 }
31 }
32 }
getProperty/setProperty這兩個方法是分別是獲取和設置屬性信息。
Properties類繼承自Hashtable類並且實現了Map介面,也是使用一種鍵值對的形式來保存屬性集。不過Properties有特殊的地方,就是它的鍵和值都是字元串類型。
*.properties文件的注釋用#。
配置數據的時候是以鍵值對的形式,調用的時候和修改的時候也是操作鍵值對。
2.當然還可以用*.xml來配置,位置一般在一個包下面。
例如com.styspace包下面的config.properties文件。
xml version="1.0" encoding="gbk"?>
<Accounts>
<Account type="by0003">
<code>100001</code>
<pass>123</pass>
<name>李四</name>
<money>1000000.00</money>
</Account>
</Accounts>
現在操作config.properties文件。
import org.apache.commons.configuration.Configuration;
import org.apache.commons.configuration.ConfigurationException;
import org.apache.commons.configuration.PropertiesConfiguration;
public class peropertiesLoaderTest {
public static void main(String[] args) throws ConfigurationException{
Configuration config = new PropertiesConfiguration("com/styspace/config.properties");
String name = config.getString("name");
System.out.println("name:" + name);
}
}
⑵ 怎樣用java讀取文件夾的屬性,
【【【【文件夾也是一種文件】】】】
java.io.File file = new java.io.File(filename);
file.exists() ;// 是否存在
file.canRead() ;//是否可讀
file.canWrite();//是否可寫
file.isDirectory();//是不是目錄
file.isFile();//是不是文件
fille.isHidden() ;//是否隱藏
file.lastModified() ;//最後的修改時間,創建是不不知道
容量就得自己寫程序統計了
⑶ java調用properties文件的問題
Java可使用Properties類讀寫properties,具體說明如下:
1.Properties類與Properties配置文件
Properties類繼承自Hashtable類並且實現了Map介面,也是使用一種鍵值對的形式來保存屬性集。不過Properties有特殊的地方,就是它的鍵和值都是字元串類型。
2.Properties中的主要方法
(1)load(InputStream inStream)
這個方法可以從.properties屬性文件對應的文件輸入流中,載入屬性列表到Properties類對象。如下面的代碼:
Properties pro = new Properties();
FileInputStream in = new FileInputStream("a.properties");
pro.load(in);
in.close();
(2)store(OutputStream out, String comments)
這個方法將Properties類對象的屬性列表保存到輸出流中。如下面的代碼:
FileOutputStream oFile = new FileOutputStream(file, "a.properties");
pro.store(oFile, "Comment");
oFile.close();
如果comments不為空,保存後的屬性文件第一行會是#comments,表示注釋信息;如果為空則沒有注釋信息。
注釋信息後面是屬性文件的當前保存時間信息。
(3)getProperty/setProperty
這兩個方法是分別是獲取和設置屬性信息。
3.代碼實例
屬性文件a.properties如下:
name=root
pass=liu
key=value
讀取a.properties屬性列表,與生成屬性文件b.properties。代碼如下:
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.util.Iterator;
import java.util.Properties;
public class PropertyTest {
public static void main(String[] args) {
try {
// 讀取屬性文件a.properties
InputStream in = new BufferedInputStream(new FileInputStream("a.properties"));
// /載入屬性列表
Properties prop = new Properties();
prop.load(in);
Iterator<String> it = prop.stringPropertyNames().iterator();
while (it.hasNext()) {
String key = it.next();
System.out.println(key + ":" + prop.getProperty(key));
}
in.close();
// /保存屬性到b.properties文件
FileOutputStream oFile = new FileOutputStream("b.properties", true);// true表示追加打開
prop.setProperty("phone", "10086");
prop.store(oFile, "The New properties file");
oFile.close();
} catch (Exception e) {
System.out.println(e);
}
}
}
⑷ win10 java文件屬性打開方式不能更改
解決方法如下:
1、首先 win+r
2、打開運行程序
3、輸入: regedit
4、找到: 計算機/HKEY_CURRENT_USER/SOFTWARE/MICROSOFT/WINDOWS/currentversion/Explorer/FileExts/.lnk會發現有openwithlist 和 openwithprogids 兩項,如果有其他的選項將其刪除
5、再將openwithlist 內的除默認以外的所有鍵值都刪除
6、將openwithprogids內的除默認和lnkfile以外的所有鍵值都刪除.
7、保存退出即可
如果還有圖標不能還原的可以在控制面板〉外觀和個性化〉個性化〉 點擊更改桌面圖標按鈕,在彈出的面板內點擊 還原默
認即可!
重啟就可以了~