Fix CBZ: do not include the first page twice
[nikiroo-utils.git] / src / be / nikiroo / fanfix / output / InfoCover.java
index 74505e7dd72bc4b290feb801ab7c588166a0280e..4be150c268843285d952c5672db8fc9c65615118 100644 (file)
@@ -1,8 +1,10 @@
 package be.nikiroo.fanfix.output;
 
+import java.io.BufferedWriter;
 import java.io.File;
-import java.io.FileWriter;
+import java.io.FileOutputStream;
 import java.io.IOException;
+import java.io.OutputStreamWriter;
 
 import javax.imageio.ImageIO;
 
@@ -14,7 +16,8 @@ class InfoCover {
        public static void writeInfo(File targetDir, String targetName,
                        MetaData meta) throws IOException {
                File info = new File(targetDir, targetName + ".info");
-               FileWriter infoWriter = new FileWriter(info);
+               BufferedWriter infoWriter = new BufferedWriter(new OutputStreamWriter(
+                               new FileOutputStream(info), "UTF-8"));
 
                if (meta != null) {
                        try {
@@ -51,6 +54,11 @@ class InfoCover {
                                }
                                writeMeta(infoWriter, "EPUBCREATOR", BasicOutput.EPUB_CREATOR);
                                writeMeta(infoWriter, "PUBLISHER", meta.getPublisher());
+                               writeMeta(infoWriter, "WORDCOUNT",
+                                               Long.toString(meta.getWords()));
+                               writeMeta(infoWriter, "CREATION_DATE", meta.getCreationDate());
+                               writeMeta(infoWriter, "FAKE_COVER",
+                                               Boolean.toString(meta.isFakeCover()));
                        } finally {
                                infoWriter.close();
                        }
@@ -73,8 +81,8 @@ class InfoCover {
                }
        }
 
-       private static void writeMeta(FileWriter writer, String key, String value)
-                       throws IOException {
+       private static void writeMeta(BufferedWriter writer, String key,
+                       String value) throws IOException {
                if (value == null) {
                        value = "";
                }