L'extension de fichier pour un objet Sérialisé
L'extension du fichier que serait le plus approprié lors de l'enregistrement d'un Serializable
objet sur le disque?
FileOutputStream fos = null;
ObjectOutputStream out = null;
try {
fos = new FileOutputStream(filename);
out = new ObjectOutputStream(fos);
out.writeObject(mySerializableObject);
} catch (IOException ex) {
ex.printStackTrace();
} finally {
IOUtils.closeQuietly(out);
}
je suis en train de penser .ser à ce moment, mais pas à 100%
OriginalL'auteur Edd | 2012-05-03
Vous devez vous connecter pour publier un commentaire.
".ser" est un choix raisonnable pour le fichier de suffixe - http://www.file-extensions.org/ser-file-extension
Cependant, on pourrait dire qu'il ne font guère de différence ce suffixe, vous utilisez ... à condition de ne pas en conflit les autres couramment utilisés application des suffixes.
Java sérialisé fichier ne peut être lu (normalement) par une application Java qui a les classes sur son chemin de classe. Un one-size-fits-all ".ser" suffixe fournit pas d'indices quant à ce que ces classes pourrait être, et où un lancement de l'application cadre devrait les trouver. Donc vous ne serez pas en mesure de configurer un Windows fichier de style association pour la double-cliquez sur l'application de lancement.
Peut-être, mais avec beaucoup de difficulté, et seulement sous certaines conditions.
Le contenu du fichier est très dépendante de l'o de la classe qui a été sérialisée. Maintenant, il est possible de déterminer quel est le nom de la classe est, et (dans certains cas) les noms et les types des sérialisé champs. Cependant, si la classe utilise la sérialisation personnalisée /externalisation, la représentation sera opaque blob de données binaires avec aucun des indices dans le fichier de la façon de les décoder. L'opacité de la goutte problème est assez fréquent, car nombre important de classes en Java SE de la bibliothèque de classe utiliser la sérialisation personnalisée ... pour plus d'efficacité ... et beaucoup de classes de l'application.
L'autre approche possible est de trouver le .les fichiers de classe pour toutes les catégories mentionnées dans le .ser fichier, désérialiser des objets, et utiliser la réflexion pour accéder aux champs de la deserialised objets. Vous pouvez même ajuster et reserialize. Toutefois, si vous n'avez pas le droit à des versions de tous les .les fichiers de classe, c'est un non-starter.
OriginalL'auteur Stephen C