.properties
A .properties egy fájlkiterjesztés olyan fájlokra, melyeket főleg a Java-val kapcsolatos technológiák használnak alkalmazás konfigurációs paraméterek tárolására. Továbbá használják internacionalizálás és honosítási stringek tárolására is, ezeket tulajdonság erőforrás csomagoknak (angolul Property Resource Bundles) nevezik.
Properties | |
Fájlkiterjesztés | .properties |
Formátum típusa | ASCII |
Minden paraméter string páronként van tárolva, a pár első tagja jelenti a paraméter nevét (ez a kulcs), a második paraméter értéket.
Formátum szerkesztés
Egy .properties fájlban minden sor általában egy tulajdonságot jelöl. Számos formátum alkalmazható az egyes sorokra pl. key=value
, key = value
, key:value
, és key value
.
A .properties fájlokban használhatók a következő írásjelek: '#','!'. A sor első nem üres karakterhelyén ezek azt jelölik, hogy a sor teljes tartalma komment (megjegyzés). A fordított perjel ('\') egy vezérlő karakter, amely karaktere escape-elésére használható. A lenti példa egy .properties fájlt mutat be.
# You are reading the ".properties" entry.
! The exclamation mark can also mark text as comments.
website = https://en.wikipedia.org/
language = English
# The backslash below tells the application to continue reading
# the value onto the next line.
message = Welcome to \
Wikipedia!
# Add spaces to the key
key\ with\ spaces = This is the value that could be looked up with the key "key with spaces".
# Unicode
tab : \u0009
A fenti példában a website
a kulcs, és a hozzátartozó érték pedig a https://en.wikipedia.org/
. Habár a kettős kereszt és a felkiáltójel a szöveget megjegyzéssé teszi, hatásuk nem érvényesül, ha a tulajdonság részei egyben. Ezért a message
kulcs értéke Welcome to Wikipedia!
és nem Welcome to Wikipedia
. Továbbá érdemes megjegyezni, hogy az összes üres karakter a Wikipedia!
előtt teljesen ki van hagyva az értékből.
Az Apache Tomcat-nél a felkiáltójel egy tagadás operatort jelent, egy sorban az első nem üres karakter helyen.
Egy .properties fájl kódolása ISO-8859-1, más néven Latin-1. Az összes nem Latin-1 karaktert az Unicode escape karakterek használatával kell megadni, pl. \uHHHH, ahol a HHHH egy hexadecimális szám, mely megadja az adott karakter helyét az Unicode karakterkészletben. Ez lehetővé teszi a .properties fájlok használatát Java erőforrás csomagokként honosításra. Egy nem Latin-1-es szövegfájl átalakítható egy hibátlan .properties fájllá az native2ascii nevű eszköz használatával, amely a JDK része, vagy olyan eszköz használatával mint amilyen pl. a po2prop,[1] amely a kétnyelvű lokalizációs formátumból az escape-elt .proerties fájlba történő transzformációt kezeli.
Az ISO 8859-1 karakterkódolást használó Java *.properties fájloknál egy másik alternatíva az unicode escape karakterek használatára nem latin-1 karakterek esetén az XML Properties fájl formátum használata, amely alapértelmezetten UTF-8-as kódolást használ, és Java 1.5-ben került bevezetésre.[2]
Az Adobe Flex szintén használ .properties fájlokat, de UTF-8 kódolással.[3]
Használatára példa Java-ban szerkesztés
Properties myProps = new Properties();
FileInputStream myInputStream = new FileInputStream("myPropertiesFile.properties");
myProps.load(myInputStream);
String myPropValue = myProps.getProperty("propKey");
String key = "";
String value = "";
for (Map.Entry<Object, Object> propItem : myProps.entrySet()) {
key = (String) propItem.getKey();
value = (String) propItem.getValue();
// do sg with these
}
myInputStream.close(); // better in finally block
myProps.setProperty("propKey", "myNewPropValue");
FileOutputStream myOutputStream = new FileOutputStream("yourPropertiesFile.properties");
myProps.store(MyOutputStream, "myAddedKey: myAddedValue");
myOutputStream.close(); // better in finally block
Kapcsolódó szócikkek szerkesztés
- bonyolult, összetett konfiguráció formátumokhoz ajánlott pl. a YAML használata.
Jegyzetek szerkesztés
- ↑ Translate Toolkit's po2prop[halott link] converts native character encodings in a Gettext PO file into correctly escaped ascii without the need for native2ascii
- ↑ Java XML Properties DTD
- ↑ Flex IResourceBundle reference
További információk szerkesztés
java.util.Properties.load(java.io.Reader)
- egy jól formált Java property fájlnak megadja a pontos szemantikájátjava.util.PropertyResourceBundle
- leírja a property erőforráshoz tartozó dolgokatjava.util.Properties
- a Java properies-t kifejti egy egyszerű xml formátumban.- MultiProperties - It is an Eclipse plugin for editing multiple key-value based files with similar content. This kind of file format can be Properties for example in Java programming language, which is frequently used for backing a ResourceBundle.
- Bracket Properties - a refresh of the Properties concept while keeping the ubiquitous .properties file format intact.
- DOKSoft Properties Editor - hasznos segédprogram egy teljes projekt properties fájljainak megtekintésére és szerkesztésére.
- DOKSoft Properties Editor Eclipse plugin Archiválva 2014. július 28-i dátummal a Wayback Machine-ben - i18n eszköz, mely az Eclipse IDE-be telepíthető.
- Message Editor - az i18n-t kezeli Java alkalmazások részére. XML property fájlokat generál. 2 stylesheet-et tartalmaz: .properties és .xml property generáláshoz fordítási időben (Ant alapú)
- JLokalize - nyílt forráskódú Java properties szerkesztő vissza irányú funkciókkal és helyesírás ellenőrzővel
Fordítás szerkesztés
Ez a szócikk részben vagy egészben a(z) .properties című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.