{"id":13522,"date":"2019-08-16T20:00:33","date_gmt":"2019-08-16T18:00:33","guid":{"rendered":"http:\/\/blog.wenzlaff.de\/?p=13522"},"modified":"2021-12-03T16:32:08","modified_gmt":"2021-12-03T15:32:08","slug":"raspberry-pi-bibelleseplan-generator-mit-java","status":"publish","type":"post","link":"http:\/\/blog.wenzlaff.de\/?p=13522","title":{"rendered":"Raspberry Pi: Bibelleseplan (PDF, Excel, TXT, ics) Generator (mit Java und twbibel)"},"content":{"rendered":"<p>Wer die <strong>1189 Kapitel<\/strong> der Bibel in einem Jahr lesen will, kann einfach jeden Wochentag 3 Kapitel und am Wochenende 4 lesen. An vielen Stellen im Internet gibt es auch Bibellesepl\u00e4ne. Ich habe mal ein paar Pl\u00e4ne in unterschiedlichen Formaten generiert, die hier kostenlos geladen werden k\u00f6nnen:<\/p>\n<p><a href=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/08\/bibelleseplan_1.9.2019.pdf\">bibelleseplan_1.9.2019 (PDF)<\/a><br \/>\n<a href=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/08\/bibelleseplan_1.9.2019.xlsx\">bibelleseplan_1.9.2019 (Excel)<\/a><br \/>\n<a href=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/08\/bibelleseplan_1.9.2019.txt\">bibelleseplan_1.9.2019 (TXT)<\/a><br \/>\nbibelleseplan_2019-08-17-ganze-Bibel (ics) siehe auch <a href=\"http:\/\/blog.wenzlaff.de\/?p=13548\" rel=\"noopener noreferrer\" target=\"_blank\">hier<\/a><br \/>\nbibelleseplan_2019-08-17-mathaeus (ics) siehe auch <a href=\"http:\/\/blog.wenzlaff.de\/?p=13548\" rel=\"noopener noreferrer\" target=\"_blank\">hier<\/a><\/p>\n<p><a href=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/08\/Bibelleseplan.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/08\/Bibelleseplan.png\" alt=\"\" width=\"2732\" height=\"2048\" class=\"aligncenter size-full wp-image-13542\" srcset=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/08\/Bibelleseplan.png 2732w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/08\/Bibelleseplan-300x225.png 300w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/08\/Bibelleseplan-768x576.png 768w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/08\/Bibelleseplan-1024x768.png 1024w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/a><\/p>\n<p>Um aber die <a href=\"https:\/\/gitlab.com\/IT-Berater\/twbibel\" rel=\"noopener noreferrer\" target=\"_blank\">twbibel<\/a> von <a href=\"https:\/\/mvnrepository.com\/repos\/central\" target=\"_blank\" rel=\"noopener noreferrer\">MavenCentral<\/a> mal zu testen, folgt hier ein kleines Java-Programm. Dieses wird dann noch um eine Oberfl\u00e4che (GUI) oder Kommandozeilen-Client erweitert um verschiedene Bibellesepl\u00e4ne mit unterschiedlichen Start Datum zu generieren.<\/p>\n<p>Um die Bibel Lib zu nutzen, muss in der <strong>pom.xml<\/strong> f\u00fcr das Maven-Projekt dieser Eintrag gemacht werden:<\/p>\n<pre class=\"lang:xhtml decode:true \">&lt;dependencies&gt;\r\n\t\t&lt;dependency&gt;\r\n\t\t\t&lt;groupId&gt;de.wenzlaff.twbibel&lt;\/groupId&gt;\r\n\t\t\t&lt;artifactId&gt;de.wenzlaff.twbibel&lt;\/artifactId&gt;\r\n\t\t\t&lt;version&gt;0.0.2&lt;\/version&gt;\r\n\t\t&lt;\/dependency&gt;\r\n\t&lt;\/dependencies&gt;\r\n<\/pre>\n<p>Dann eine Java Klasse mit ungef\u00e4hr diesem Inhalt:<!--more--><\/p>\n<pre class=\"left-set:true lang:java decode:true \">LocalDate startDate = LocalDate.of(DEFAULT_START_JAHR, DEFAULT_START_MONAT, DEFAULT_START_TAG);\r\n\r\nLocalDate endDate = startDate.plusDays(MAXIMALE_TAGE);\r\n\r\nList&lt;LocalDate&gt; erg = getDatesBetween(startDate, endDate);\r\nBibel.getAlleKapitel().stream().forEach(buch -&gt; {\r\n\r\n\tSystem.out.println(erg.get(tag_counter) + \" , \" + buch);\r\n\r\n\tnextTag(erg);\r\n\t\t});\r\n<\/pre>\n<p>Ein paar Hilfsfunktionen:<\/p>\n<pre class=\"lang:java decode:true \" >\t\r\nprivate static boolean isWochenende(List&lt;LocalDate&gt; erg) {\r\n\t\treturn erg.get(tag_counter).getDayOfWeek().equals(DayOfWeek.SATURDAY)\r\n\t\t\t\t|| erg.get(tag_counter).getDayOfWeek().equals(DayOfWeek.SUNDAY);\r\n\t}\r\n\r\n\r\n\tprivate static List&lt;LocalDate&gt; getDatesBetween(LocalDate startDate, LocalDate endDate) {\r\n\r\n\t\tlong daysBetween = ChronoUnit.DAYS.between(startDate, endDate);\r\n\r\n\t\treturn IntStream.iterate(0, i -&gt; i + 1).limit(daysBetween).mapToObj(i -&gt; startDate.plusDays(i))\r\n\t\t\t\t.collect(Collectors.toList());\r\n\t}\r\n<\/pre>\n<p>Wer das mal auf einem Raspberry Pi (es geht auch unter Windows und anderen Systemen) ausprobieren will, kann diese <a href=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/08\/bibelleseplan-0.0.1.zip\">bibelleseplan-0.0.1.zip<\/a> laden und auf dem Pi mit <strong>unzip bibelleseplan-0.0.1.zip<\/strong> auspacken. Auf dem System muss mind. Java 8 installiert sein.<\/p>\n<p>Dann kann das <strong>bibelleseplan-0.0.1<\/strong> Programm mit:<\/p>\n<p><strong>java -jar bibelleseplan-0.0.1.jar<\/strong><\/p>\n<p>ausgef\u00fchrt werden. Hier die Beispielausgabe auf der Konsole:<\/p>\n<p><a href=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/08\/Bildschirmfoto-2019-08-16-um-11.30.32.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-13530\" src=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/08\/Bildschirmfoto-2019-08-16-um-11.30.32.png\" alt=\"\" width=\"417\" height=\"501\" srcset=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/08\/Bildschirmfoto-2019-08-16-um-11.30.32.png 417w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2019\/08\/Bildschirmfoto-2019-08-16-um-11.30.32-250x300.png 250w\" sizes=\"auto, (max-width: 417px) 100vw, 417px\" \/><\/a>.<\/p>\n<p>Wenn man das als Bibelleseplan haben will, kann das leicht in eine Datei z.b. bibelleseplan.txt geleitet werden:<\/p>\n<p><strong>java -jar bibelleseplan-0.0.1.jar &gt; bibelleseplan.txt<\/strong><\/p>\n<p>Eine Weiterverarbeitung bzw. eigene Sortierung kann dann leicht geschehen.<\/p>\n<p><strong>TODO:<\/strong><br \/>\n-Generator mit Startparameter (Startdatum, Anzahl Kap. pro Tag)<br \/>\n-Automatisch ausgabe Formate (TXT, PDF, Excel, iCAL)<br \/>\n-Swing GUI<br \/>\n-Kommandozeilen Client<br \/>\n-Switch AT\/NT<br \/>\n-Nur AT oder NT<br \/>\n-Pushover erinnerung t\u00e4glich<br \/>\n-E-Mail erinnerung t\u00e4glich<br \/>\n&#8211; &#8230;<\/p>\n<p>Weitere Vorschl\u00e4ge, gern wie immer per E-Mail erw\u00fcnscht &#8230;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Wer die 1189 Kapitel der Bibel in einem Jahr lesen will, kann einfach jeden Wochentag 3 Kapitel und am Wochenende 4 lesen. An vielen Stellen im Internet gibt es auch Bibellesepl\u00e4ne. Ich habe mal ein paar Pl\u00e4ne in unterschiedlichen Formaten generiert, die hier kostenlos geladen werden k\u00f6nnen: bibelleseplan_1.9.2019 (PDF) bibelleseplan_1.9.2019 (Excel) bibelleseplan_1.9.2019 (TXT) bibelleseplan_2019-08-17-ganze-Bibel (ics) &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/blog.wenzlaff.de\/?p=13522\" class=\"more-link\"><span class=\"screen-reader-text\">\u201eRaspberry Pi: Bibelleseplan (PDF, Excel, TXT, ics) Generator (mit Java und twbibel)\u201c <\/span>weiterlesen<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[220,5,1361,1023,2752],"tags":[3736,3737,3735,3738,3739,3740],"class_list":["post-13522","post","type-post","status-publish","format-standard","hentry","category-anleitung","category-java","category-java-8","category-raspberry-pi","category-raspberry-pi-zero-w","tag-bibel","tag-bibel-in-einem-jahr-lesen","tag-bibelleseplan","tag-kostenlose-biblelleseplaene","tag-lese-plan-bibel","tag-twbibel"],"_links":{"self":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/posts\/13522","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=13522"}],"version-history":[{"count":0,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/posts\/13522\/revisions"}],"wp:attachment":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=13522"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=13522"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=13522"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}