Das High Efficiency Image File Format (HEIF) von Apple kann auf einem Mac leicht in das EXR-Format umgewandelt werden, welches für Blender verwendet werden kann.
Dafür muss die HEIC Foto Datei nur in der Vorschau App geöffnet werden und in dem gewünschten Format exportiert werden über Ablage – Exportieren „Apple HEIC nach EXR für Blender World Hintergrund auf Mac generieren“ weiterlesen
Kommandozeilen Prozessor jq für JSON
Der Kommandozeilen Prozessor jq für JSON ist auf dem Raspberry Pi schnell mit
1 |
sudo apt install jq |
installiert. Es wird dann, wie man mit
1 |
jq --version |
feststellen kann, die Version jq-1.5-1-a5b5cbe installiert. Das ist zwar nicht die aktuelle vom 1.Nov. 2018 1.6 aber immerhin aus 2015. Es reicht auch erstmal. Man kann auch alle Befehle in einem Online Editor unter jqplay.org austesten.
Eine Anleitung … „Kommandozeilen Prozessor jq für JSON“ weiterlesen
Excel-Quickie: Wie kann ein Spalte mit allen Tagen des Jahres (Monat) erzeugt werden?
Manchmal braucht man alle Tage im Jahr oder Monat. Z.b. in solch einem Format:
Wie kann die erzeugt werden? „Excel-Quickie: Wie kann ein Spalte mit allen Tagen des Jahres (Monat) erzeugt werden?“ weiterlesen
Linux Quickie: Wie kann eine sortierte CSV Datei mit Dateinamen, Rechten und Gruppe erzeugt werden?
Manchmal will man Verzeichnisse und Dateien vergleichen. Wie kann auf einem Raspberry Pi eine sortierte Komma separierte Liste (CSV, Excel) aller Dateien und Verzeichnisse erstellt werden?
Das geht auf der Komandozeile mit find, stat, format und sort:
1 |
find . -exec stat --format='%n,%a,%U,%G,' {} \; | sort > dateiliste.csv |
Wir suchen also mit find in dem Wurzelverzeichnis (.) und führen für jede Datei und jedes Verzeichnis ein Systemstatus abfrage mit stat aus. Dann geben wir die Parameter formartiert mit , aus n=Dateiname, a=Rechte, U=User, G=Gruppe. Das alles wird dann sortiert in die dateiliste.csv geschrieben.
Wir erhalten dann z.B. eine solche Liste: „Linux Quickie: Wie kann eine sortierte CSV Datei mit Dateinamen, Rechten und Gruppe erzeugt werden?“ weiterlesen
Raspberry Pi: XML formatieren mit xmllint unter Linux
Manchmal hat man auf dem Raspberry Pi XML Dokumente die man ansehen will, die aber nicht schön formatiert sind.
Z.B. dieses XML Dokument hat alles in einer Zeile, und ist das Ergebnis einer Haltestellenabfrage in Hannover über diese API:
1 |
<?xml version="1.0" encoding="utf-8"?><Trias version="1.0" xmlns="trias" xmlns:siri="http://www.siri.org.uk/siri" xmlns:mw="http://services.mentzdv.de/2010/07/middleware"><ServiceDelivery><siri:ResponseTimestamp>2018-01-26T16:39:07</siri:ResponseTimestamp><siri:ProducerRef>HannIT</siri:ProducerRef><siri:ResponseMessageIdentifier>16-39-04-229</siri:ResponseMessageIdentifier><DeliveryPayload><!--Version: 10.0.46.2 build 04.08.2017 23:35:59 - Data Build: 2018-01-26T02:58:08 - Data Format: EFA10_00_08--><TripResponse><ErrorMessage><Code>-2</Code><Text><Text>Der Inhalt des Elements 'LocationRef' in Namespace 'trias' ist unvollständig. Erwartet wurde die Liste der möglichen Elemente: 'LocationName' in Namespace 'trias'.</Text><Language>de</Language></Text></ErrorMessage><ErrorMessage><Code>-2</Code><Text><Text>Der Inhalt des Elements 'LocationRef' in Namespace 'trias' ist unvollständig. Erwartet wurde die Liste der möglichen Elemente: 'LocationName' in Namespace 'trias'.</Text><Language>de</Language></Text></ErrorMessage><TripResult><ResultId>ID1925019635546312568133148169218912592159</ResultId><Trip><TripId>ID79254160591872422507315819789461666810137</TripId><Duration>PT1H2M</Duration><StartTime>2018-01-25T18:55:00</StartTime><EndTime>2018-01-25T19:57:00</EndTime><Interchanges>1</Interchanges><TripLeg><LegId>ID1913421648141272672174552254815522713559</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T18:55:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:17:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03470:645</JourneyRef><LineRef>de:gvh:03470</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>470</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID139231716200782176135165271411684811793</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:121</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004882</DestinationStopPointRef><DestinationText><Text>Osterwald UE Großer Weg</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID105164111781947352671401882331617935139115</ResultId><Trip><TripId>ID159169223155511751349321724680145161110</TripId><Duration>PT1H1M</Duration><StartTime>2018-01-25T18:56:00</StartTime><EndTime>2018-01-25T19:57:00</EndTime><Interchanges>2</Interchanges><TripLeg><LegId>ID10815957164483877314721718154162215165197</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen/Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T18:56:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:2551</StopPointRef><StopPointName><Text>Hannover Wiesenau</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:01:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:02001:183</JourneyRef><LineRef>de:gvh:02001</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>urbanRail</PtMode><Name><Text>Stadtbahn</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>1</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25001611</DestinationStopPointRef><DestinationText><Text>Laatzen, Laatzen</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID2061855721862517977133148250126255684919</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2551</StopPointRef><StopPointName><Text>Hannover Wiesenau</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:07:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:29:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03135:878</JourneyRef><LineRef>de:gvh:03135</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>135</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID9995222128125187707315220323680631562182</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:121</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004882</DestinationStopPointRef><DestinationText><Text>Osterwald UE Großer Weg</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID161981841731302019878174130109162453113116</ResultId><Trip><TripId>ID3918616412419135149781371953388149171121194</TripId><Duration>PT1H0M</Duration><StartTime>2018-01-25T18:57:00</StartTime><EndTime>2018-01-25T19:57:00</EndTime><Interchanges>3</Interchanges><TripLeg><LegId>ID19424210018018023612771405119231108213121</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T18:57:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:6631</StopPointRef><StopPointName><Text>Langenhagen/Bahnhof Mitte</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:01:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03253:452</JourneyRef><LineRef>de:gvh:03253</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>253</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25002921</DestinationStopPointRef><DestinationText><Text>Langenhagen Zentrum</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID23323118724021416427781792089816576113151182</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:6631</StopPointRef><StopPointName><Text>Langenhagen/Bahnhof Mitte</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:06:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4411</StopPointRef><StopPointName><Text>Hannover Bahnhof Ledeburg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:10:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:ddb:92H04:34459</JourneyRef><LineRef>de:ddb:92H04</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>rail</PtMode><Name><Text>S-Bahn</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>S4</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25709922</DestinationStopPointRef><DestinationText><Text>Hildesheim Hauptbahnhof (DB)</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID4920542874223994771381012721722024388225</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4411</StopPointRef><StopPointName><Text>Hannover Bahnhof Ledeburg</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:14:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:19:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03136:855</JourneyRef><LineRef>de:gvh:03136</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>bus</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>136</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID652261514012618017670175133982138136218197</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:121</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004882</DestinationStopPointRef><DestinationText><Text>Osterwald UE Großer Weg</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID11514022929162233141661592261847712923322380</ResultId><Trip><TripId>ID1652211681371157925069184721752532381851970</TripId><Duration>PT47M</Duration><StartTime>2018-01-25T19:40:00</StartTime><EndTime>2018-01-25T20:27:00</EndTime><Interchanges>1</Interchanges><TripLeg><LegId>ID312311722214831647716912518895244264960</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:40:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4940</StopPointRef><StopPointName><Text>Berenbostel Friedhof</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:08:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03480:644</JourneyRef><LineRef>de:gvh:03480</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>480</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004779</DestinationStopPointRef><DestinationText><Text>Garbsen</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID3329442610613616813613286151252103191195</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4940</StopPointRef><StopPointName><Text>Berenbostel Friedhof</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:20:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:27:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04491:56</JourneyRef><LineRef>de:gvh:04491</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>491</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004882</DestinationStopPointRef><DestinationText><Text>Osterwald UE Großer Weg</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID118139611755178916415022410698139126144107</ResultId><Trip><TripId>ID131187901371121036771547612819354244136173</TripId><Duration>PT1H4M</Duration><StartTime>2018-01-25T19:53:00</StartTime><EndTime>2018-01-25T20:57:00</EndTime><Interchanges>1</Interchanges><TripLeg><LegId>ID577166230254887651681252071162029217446</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:53:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:15:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03470:647</JourneyRef><LineRef>de:gvh:03470</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>470</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID130102331026661101731901681619196131246223</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:165</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25008000</DestinationStopPointRef><DestinationText><Text>Neustadt Bahnhof (ZOB)</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID2422521721919511024079149568022252143133</ResultId><Trip><TripId>ID561512171131471642397317415022223117617924343</TripId><Duration>PT1H1M</Duration><StartTime>2018-01-25T19:56:00</StartTime><EndTime>2018-01-25T20:57:00</EndTime><Interchanges>2</Interchanges><TripLeg><LegId>ID115101125110189114787816281225159180157222243</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen/Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:56:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:2551</StopPointRef><StopPointName><Text>Hannover Wiesenau</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:01:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:02001:93</JourneyRef><LineRef>de:gvh:02001</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>urbanRail</PtMode><Name><Text>Stadtbahn</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>1</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25001731</DestinationStopPointRef><DestinationText><Text>Sarstedt</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID4220210417623222571144145131167301226160</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2551</StopPointRef><StopPointName><Text>Hannover Wiesenau</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:04:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:25:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03135:880</JourneyRef><LineRef>de:gvh:03135</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>135</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID23313114750179181537614420825018112515976198</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:165</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25008000</DestinationStopPointRef><DestinationText><Text>Neustadt Bahnhof (ZOB)</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID62710347231212777916720530102103236129125</ResultId><Trip><TripId>ID192142087958171817614911715312214495626</TripId><Duration>PT55M</Duration><StartTime>2018-01-25T20:02:00</StartTime><EndTime>2018-01-25T20:57:00</EndTime><Interchanges>3</Interchanges><TripLeg><LegId>ID021221622813524314867154108373622179153211</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:02:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:6631</StopPointRef><StopPointName><Text>Langenhagen/Bahnhof Mitte</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:06:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03253:454</JourneyRef><LineRef>de:gvh:03253</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>253</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25002921</DestinationStopPointRef><DestinationText><Text>Langenhagen Zentrum</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID2103126170139236204721912618558203440220</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:6631</StopPointRef><StopPointName><Text>Langenhagen/Bahnhof Mitte</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:12:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4411</StopPointRef><StopPointName><Text>Hannover Bahnhof Ledeburg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:16:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:ddb:92H05:34581</JourneyRef><LineRef>de:ddb:92H05</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>rail</PtMode><Name><Text>S-Bahn</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>S5</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25108000</DestinationStopPointRef><DestinationText><Text>Hameln Bahnhof</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID2102025022290209126701891871688972155206251</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4411</StopPointRef><StopPointName><Text>Hannover Bahnhof Ledeburg</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:20:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:25:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03135:880</JourneyRef><LineRef>de:gvh:03135</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>135</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID223511961452379142751651781292641397912</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:165</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25008000</DestinationStopPointRef><DestinationText><Text>Neustadt Bahnhof (ZOB)</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID40298810861371865128253164221761717693</ResultId><Trip><TripId>ID33161119322081084465142150261461872496174</TripId><Duration>PT1H4M</Duration><StartTime>2018-01-25T20:53:00</StartTime><EndTime>2018-01-25T21:57:00</EndTime><Interchanges>1</Interchanges><TripLeg><LegId>ID598210623213128767019019138228121928482</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:53:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:15:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03470:649</JourneyRef><LineRef>de:gvh:03470</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>470</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID72215115525443670148818720539241229233</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T21:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:124</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004882</DestinationStopPointRef><DestinationText><Text>Osterwald UE Großer Weg</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID221241100164208190132681292215018612118117135</ResultId><Trip><TripId>ID178441123217718823065128741712514116725118</TripId><Duration>PT1H1M</Duration><StartTime>2018-01-25T20:56:00</StartTime><EndTime>2018-01-25T21:57:00</EndTime><Interchanges>2</Interchanges><TripLeg><LegId>ID721151667710012011365187961882178724220760</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen/Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:56:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:2551</StopPointRef><StopPointName><Text>Hannover Wiesenau</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:01:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:02001:97</JourneyRef><LineRef>de:gvh:02001</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>urbanRail</PtMode><Name><Text>Stadtbahn</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>1</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25001731</DestinationStopPointRef><DestinationText><Text>Sarstedt</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID24361371510774138671721997766213161108</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2551</StopPointRef><StopPointName><Text>Hannover Wiesenau</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T21:04:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:25:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03135:882</JourneyRef><LineRef>de:gvh:03135</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>135</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID112196223552103917218414817624023119128197</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T21:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:124</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004882</DestinationStopPointRef><DestinationText><Text>Osterwald UE Großer Weg</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID116155168213245145287216534195106108248127104</ResultId><Trip><TripId>ID74250138237497825275173189149253169411675</TripId><Duration>PT51M</Duration><StartTime>2018-01-25T21:06:00</StartTime><EndTime>2018-01-25T21:57:00</EndTime><Interchanges>3</Interchanges><TripLeg><LegId>ID46572610722824922765191103242111218710047</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T21:06:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:6631</StopPointRef><StopPointName><Text>Langenhagen/Bahnhof Mitte</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:10:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03480:613</JourneyRef><LineRef>de:gvh:03480</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>480</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004948</DestinationStopPointRef><DestinationText><Text>Engelbostel Kirchstraße</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID2298515723823375966916321165239254168237179</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:6631</StopPointRef><StopPointName><Text>Langenhagen/Bahnhof Mitte</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T21:12:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4411</StopPointRef><StopPointName><Text>Hannover Bahnhof Ledeburg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:16:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:ddb:92H05:34585</JourneyRef><LineRef>de:ddb:92H05</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>rail</PtMode><Name><Text>S-Bahn</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>S5</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25108000</DestinationStopPointRef><DestinationText><Text>Hameln Bahnhof</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID22591552723199181671901766491225577125</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4411</StopPointRef><StopPointName><Text>Hannover Bahnhof Ledeburg</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T21:20:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:25:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03135:882</JourneyRef><LineRef>de:gvh:03135</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>135</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID11757226130228246184641495024211715624657175</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T21:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:124</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004882</DestinationStopPointRef><DestinationText><Text>Osterwald UE Großer Weg</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult></TripResponse></DeliveryPayload></ServiceDelivery></Trias> |
Wie können wir das nun schön formatieren? Dazu gibt es das Kommandozeilen-Tool xmllint. Damit kann eine XML Datei leicht formatiert werden. Dazu das xmllint installieren mit
1 |
sudo apt-get install libxml2-utils |
Dann ein Aufruf von „Raspberry Pi: XML formatieren mit xmllint unter Linux“ weiterlesen
JSON Editor Plugin für Eclipse (Mars.2 Release (4.5.2))
Um JSON Files zu bearbeiten, gibt es das JSON-PlugIn. Damit können JSON-Dateien bearbeitet werden und auch die Syntaxhervorhebung ist schön.
„JSON Editor Plugin für Eclipse (Mars.2 Release (4.5.2))“ weiterlesen
Tip der Woche: Wie können formatierungen für Eclipse im Quellcode für bestimmte Bereiche ausgeschaltet werden?
Hat man mühsam den Quellcode eingerückt, für SQLs oder bestimmte Variablen oder Konstanten und man möchte nicht, das dieser Code wieder durch die automatische Formatierung verloren geht wie in diesem Beispiel:
Dann kann man zwei Tags definieren in:
Dann auf Edit klicken. Auf dem letzten Tab unter Off/On Tags können belibige Tags definiert werden:
und schon bleibt der Quelltext zwischen den Tags, so wie angegeben.
In Projekten müsste man sich dann aber auf Tags für alle einigen und in der Systemweiten XML festschreiben, sonst würde jemand anderes, der die Datei ausscheckt und den Tag nicht definiert hat, alles wieder umstellen.
String „Fri Feb 05 17:15:59 CET 2010“ in Date Objekt umwandeln
Soll der String, der von einen Date.toString()
Methode geliefert werden wieder in ein Date
Objekt umgewandelt werden, geht dies mit dieser Methode. „String „Fri Feb 05 17:15:59 CET 2010“ in Date Objekt umwandeln“ weiterlesen
String.format
Mit der static Methode String.format kann ab JDK 1.5 leicht eine Formatierung durchgeführt werden. z.B. „String.format“ weiterlesen