Samstag, 31. Oktober 2009

Zippen/Datenkompression in Java: Codeschnipsel

Habe hier bei Galileo OpenBook etwas gefunden was ich fürs entzippen in Java gut gebrauchen kann. Baut auf den in Java integrierten Zip-Bibliotheken auf.

Galileo Computing :: Java ist auch eine Insel (8. Auflage) – 14.10 Datenkompression - Annotated



    • package com.tutego.insel.io.zip;



      import java.util.zip.*;
      import java.io.*;
      import java.util.*;

      public class unzip
      {
        private static final byte[] buffer = new byte[ 0xFFFF ];

        public static void main( String[] args )
        {
          if ( args.length != 2 )
            System.out.println( "Benutzung: unzip " );
          else
          {
            try
            {
              ZipFile zipFile = new ZipFile( args[0] );
              Enumeration extends ZipEntry> zipEntryEnum = zipFile.entries();

              while ( zipEntryEnum.hasMoreElements() )
              {
                ZipEntry zipEntry = zipEntryEnum.nextElement();
                System.out.print( zipEntry.getName() + "." );
                extractEntry( zipFile, zipEntry, args[1] );
                System.out.println( ".. unpacked" );
              }
            }
            catch ( FileNotFoundException e )
            {
              System.err.println( "Fehler: ZipFile nicht gefunden!" );
            }
            catch ( IOException e )
            {
              System.err.println( "Fehler: Allgemeiner Ein-/Ausgabefehler!" );
            }
          }
        }

        private static void extractEntry( ZipFile zf, ZipEntry entry, String destDir )
          throws IOException
        {
          File file = new File( destDir, entry.getName() );

          if ( entry.isDirectory() )
            file.mkdirs();
          else
          {
            new File( file.getParent() ).mkdirs();

            InputStream  is = null;
            OutputStream os = null;

            try
            {
              is = zf.getInputStream( entry );
              os = new FileOutputStream( file );

              for ( int len; (len = is.read(buffer)) != –1; )
                os.write( buffer, 0, len );
            }
            finally
            {
              if ( os != null ) os.close();
              if ( is != null ) is.close();
            }
          }
        }
      }







Posted from Diigo. The rest of my favorite links are here.

Freitag, 17. Juli 2009

Python Beispiele / Examples

Python Beispiele / Examples
Hier gibt es vielen beispielhaften Python-Code.

Posted from Diigo. The rest of my favorite links are here.

Von Standby automatisch in Hibernation

Hallo an alle!

Bei Windows landet mein Rechner automatisch im Hibernation-Modus nach 2 h StandBy ohne Unterbrechung.

Ich finde das ziemlich cool und energiesparend, habe aber keinen Plan wie das unter Ubuntu gehen soll. Habe bereits gegoogelt und das hier angeschaut: http://wiki.ubuntuusers.de/Schlafmodi?highlight=standby#Energieverwaltung. Bringt aer irgendwie alles nichts.

Bietet KDE mit seinen tiefergehenden Einstellungsmöglichkeiten hier vielleicht Hilfe? Würde mich freuen wenn mir da jemand helfen kann.


Posted from Diigo. The rest of my favorite links are here.

Freitag, 12. Juni 2009

Info-Blog für 64-Bit Systeme

Ich habe einen nützlichen Blog für alle gefunden, die ein 64-Bit System unter Linux, speziell Debian und Ubuntu, betreiben. Linux64 heißt "er" und ist ein Abonnement wert. Ohne diesen Blog wäre ich beispielsweise nicht auf die 64-Bit Flash Version gekommen, die es übrigens hier gibt. Sie ist zwar erst in der Alpha-Version, aber sie läuft und ist durchaus als Ersatz zu gebrauchen. Allerdings benutze ich weiterhin die 32-Bit Flash Variante mit ndiswrapper als "Unterlage" :-).
.

Donnerstag, 11. Juni 2009

Lahme Fenstergrößen-Änderung mit Ati

Wenn man unter Ubuntu-Linux die Fenstergrößen auf dem Desktop ändert oder maximiert und eine Ati-Grafikkarte benutzt, kommt es u.U. vor, dass dies gefühlte 5 Sekunden dauert bis es vonstatten gegangen ist.

Bei mir tritt das Problem mit aktiviertem Compiz auf. Dabei hatte ich sowohl den offiziellen Ati-Treiber als auch den offenen und inoffiziellen radeon-Treiber installiert. Meine GraKa ist eine Ati-Radeon HD 3450.

Das Problem ist auf einen für Ati-Karten ungeeigneten XServer zurückzuführen. Einen alternativen gibt es in folgenden Repositories:
deb http://ppa.launchpad.net/ubuntu-x-swat/xserver-no-backfill/ubuntu jaunty main
deb-src http://ppa.launchpad.net/ubuntu-x-swat/xserver-no-backfill/ubuntu jaunty main
Einfach in System -> Systemverwaltung -> Synaptics -> Einstellungen Packetquellen verwalten -> Packete von Drittanbietern jede Zeile jeweils einfügen, links oben auf "Neu laden" "Aktualisieren" und dann "Anwenden".

Die Informationen von den Repositories habe ich von Linux64.de. Bei Fragen dazu einfach einen Blog-Kommentar schreiben :-).

WLAN-Karte aus nach StandBy

Bislang konnte ich in Ubuntu-Linux nicht mehr per WLAN über meinen Router ins I-Net, nachdem ich Ubuntu aus dem StandBy aufgeweckt habe, was v.a. einem Stromsparfreak wie mich ziemlich auf die Nerven gehen kann.

Abhilfe kann das Programm wicd schaffen. Diese einmal aus den Packetquellen/Synaptic installiert baut nach dem StandBy automatisch eine Verbindung mit dem Lieblingsnetzwerk her. Super!

Langsam wird es mit Ubuntu immer besser. Fehlt nur noch eine bessere Grafikunterstützung von ATI und ein schnellerer Firefox. Über ersteres habe ich bereits hier lamentiert.

Samstag, 6. Juni 2009

firefox smooth image scaling

Wer kennt es nicht: beim Zoomen von Webseiten verpixelt der Firefox in Linux bisweilen häufig die Bilder sehr stark, was man von Windows her nicht unbedingt gewohnt ist.

Um den Ubuntu-Linux Bug beim Zoomen von Bildern zu beheben sollte man sich unter Jaunty folgende Packetquellen einrichten:

deb http://ppa.launchpad.net/firefox-smooth-scaling/ppa/ubuntu jaunty main
deb-src http://ppa.launchpad.net/firefox-smooth-scaling/ppa/ubuntu jaunty main

Dann einfach "Aktualisierungen vormerken" und "Anwenden" und der Bug ist gefixed.

Hier geht zum Launchpad-PPAs.