Je veux écrire dans un fichier en utilisant UTF-16 donc j'utilise PrintWriter (fichier, "UTF-16"), mais ensuite il supprime tout dans le fichier, je pourrais utiliser FileWriter (fichier, true) , mais alors il ne serait pas en UTF-16, et il n'y a apparemment pas de constructeur pour PrintWriter comme PrintWriter (Writer, Charset, boolean append);Java PrintWriter File Overwrite
Que dois-je faire?
Vous pouvez tout lire en premier, mettre à jour ces données, puis les réécrire dans le "nouveau" fichier? –
@tima: Ce n'est pas une copie de cela, pour autant que je puisse voir. Rien ici ne gère l'ajout de * et * en spécifiant l'encodage. –
@KenReid Ajoutant à un fichier est une chose assez ordinaire à vouloir faire. Il ne devrait jamais être nécessaire de slurper un fichier puis de le réécrire depuis le début. Ce serait souvent inefficace. Dans certains cas, le fichier ne rentrerait pas dans la mémoire. – slim