Portal > Foren > Java > Allgemeine Java-Programmierung > Java-Application soll Bild-Dateien am PHP-Script senden
Antwort
 
Themen-Optionen Thema durchsuchen
Alt 28.05.2007, 19:54 Nach oben    #1
Benutzer
 
Registriert seit: 01.02.2005
Beiträge: 64
Standard Java-Application soll Bild-Dateien am PHP-Script senden

Hallo, ich habe gerade ein ähnliches Problem wie flanger einen Post vor mir - bei mir liegt es aber eher an den Grundlagen.

Ich programmiere an einem CMS, dessen Adminbereich aus einer Java-Application besteht, welche die eingegebenen Daten per POST über eine URL-Connection an ein PHP-Script geben soll.

Soweit das "nur" die Texte betrifft, ist da kein Problem bei und alles funktioniert. JEditorPane -> HTML auslesen -> den Inhalt des Body-Tags ausleden -> Upload -> fertig

Jetzt will ich aber zusätzlich noch Bilder auf die Homepage stellen können.
Die Frage ist: wie sende ich das Bild per Post an den Server?
Für die Strings nutze ich einen BufferedWriter - der geht ja nur für Strings und nicht für Binärdaten, oder?
Welchen Writer oder Stream muss ich da verwenden?

Und wie verfahre ich dann mit den Daten auf der Serverseite?
Da das PHP und nich Java ist:
Bilder in MySQL speichern und ausgeben
__________________
  1. My software never has bugs. It just develops random features!
  2. Beta. Software undergoes beta testing shortly before it's released. Beta is Latin for 'still doesn't work.'
  3. There are two ways to write error-free programs. Only the third one works.

Geändert von Binary (28.05.2007 um 20:05 Uhr) Grund: Link hinzugefügt
Binary ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 28.05.2007, 23:31 Nach oben    #2
Johannes Müller
 
Benutzerbild von $traight-$hoota
 
Registriert seit: 15.09.2005
Ort: Königreich Flieden
Beiträge: 551
Standard

für binärdaten (damit müsstest du dich ja auskennen scnr) musst du in java streams verwenden, also OutputStream oder eine subklasse davon. also wenn eine bilddatei ausgewählt wird, diese per InputStream aus der datei lesen und an den server schicken. das sollte dann aber nicht als normaler POST geschehen, sondern als dateiupload (einfach mal googlen, da gibts bestimmt irgendwoe fertige klassen oder beispiele in java).

ich würde dir davon abraten, die bilder selber in einer datenbank zu speichern, die wird dadurch nur unnötig mit binärdaten zugemüllt. besser ist es, die bilder als dateien auf dem server zu speichern und in der datenbank nur verlinkungen auf die dateien verwenden (also entweder den dateinamen als spalte oder die dateien nach ids benennen).
__________________
Weißt Bescheid - Scheiß wie weit
$traight-$hoota ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 29.05.2007, 09:34 Nach oben    #3
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.134
Standard

Da du's vermutlich trotzdem per POST verschicken musst, lautet das Schlüsselwort "base64".
pago ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 29.05.2007, 11:23 Nach oben    #4
Benutzer
 
Registriert seit: 01.02.2005
Beiträge: 64
Standard

also als sollte dann folgendes reichen (jetzt als Pseudo-Code einfach)

Code:
String postData = "?bild="+encodeBase_64(bild.getBytes);
serverUpload.write(postData);
serverUpload.flush();
serverUpload.close();
und dann halt

PHP-Code:
myPicture base64_decode($_REQUEST["bild"]); 
Probier ich (so sinngemäß) nachher gleich mal aus.

Wäre schön, wenn das klappen würde.

Zitat:
das sollte dann aber nicht als normaler POST geschehen, sondern als dateiupload (einfach mal googlen, da gibts bestimmt irgendwoe fertige klassen oder beispiele in java).
Wenn ich direkten Zugriff auf die DB, oder über FTP auf auf den Server hätte, würde ich nicht ein PHP Script dazwischen klemmen^^
__________________
  1. My software never has bugs. It just develops random features!
  2. Beta. Software undergoes beta testing shortly before it's released. Beta is Latin for 'still doesn't work.'
  3. There are two ways to write error-free programs. Only the third one works.
Binary ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 29.05.2007, 15:08 Nach oben    #5
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.134
Standard

Japp. Da Java keine Standard-Bib für Base64 hat:
http://migbase64.sourceforge.net/
pago ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 29.05.2007, 17:39 Nach oben    #7
Johannes Müller
 
Benutzerbild von $traight-$hoota
 
Registriert seit: 15.09.2005
Ort: Königreich Flieden
Beiträge: 551
Standard

Zitat:
Zitat von Binary Beitrag anzeigen
Zitat:
das sollte dann aber nicht als normaler POST geschehen, sondern als dateiupload (einfach mal googlen, da gibts bestimmt irgendwoe fertige klassen oder beispiele in java).
Wenn ich direkten Zugriff auf die DB, oder über FTP auf auf den Server hätte, würde ich nicht ein PHP Script dazwischen klemmen^^
auch mit nem php-skript kann man dateiuploads handeln. per <input type="file"> kann beispielsweise ne datei von html/http über php hochgeladen werden.
__________________
Weißt Bescheid - Scheiß wie weit
$traight-$hoota ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 30.05.2007, 08:04 Nach oben    #8
Benutzer
 
Registriert seit: 01.02.2005
Beiträge: 64
Standard

Das is mir klar - aber JS ist hier leider gesperrt und anders, als über Java kann ich somit keinen WYSIWYG-Editor erstellen - was nunmal die Aufgabe ist... die Homepage soll komplett mit nur einem WYSIWYG-Programm editiert werden können. Den Webbrowser soll man dann nur noch brauchen um sich das Ergebnis dann anzuschauen.

Genauer:
Das Programm ist kein HTML-Editor, wie ein vereinfachtes Frontpage, o.ä. Das soll ein kompletter Assistent werden, der den Nutzer durch die einzelnen Eingaben leitet und möglichst mit kurzer Einarbeitungszeit zu nutzen ist --> Sprich idotensicher soll es sein.
Leider hab ich verschiedene Seiten, auf denen sich z.B. Leute vorstellen... [BILD] - Text

Und da das Gremium, das dort u.a. vorgestellt wird, jedes Jahr gewählt wird, ändert sich da immer mal wieder was.
__________________
  1. My software never has bugs. It just develops random features!
  2. Beta. Software undergoes beta testing shortly before it's released. Beta is Latin for 'still doesn't work.'
  3. There are two ways to write error-free programs. Only the third one works.
Binary ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 30.05.2007, 10:53 Nach oben    #9
Johannes Müller
 
Benutzerbild von $traight-$hoota
 
Registriert seit: 15.09.2005
Ort: Königreich Flieden
Beiträge: 551
Standard

wer hat denn was von javascript gesagt?
__________________
Weißt Bescheid - Scheiß wie weit
$traight-$hoota ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 30.05.2007, 14:36 Nach oben    #10
Benutzer
 
Registriert seit: 01.02.2005
Beiträge: 64
Standard

Zitat:
Zitat von $traight-$hoota
wer hat denn was von javascript gesagt?
naja - da der HTML-Editor und das Uploaden der Bilder aus ein und dem selben Programm vonstatten gehen soll, muss ich ja irgendwie, wenn ich das über HTML-Forumlare machen soll, wie du es vorschlägst, die Eingabe des Nutzers formatieren, da er ja nicht nur Text eingibt, sondern eben auch Tags, wie <b>, <u>, ... zur Verfügung hat.
Das ganze soll aber WYSIWYG werden.
Die Nutzer des Programmes haben gesagt, dass sie keine Ahnung von HTML haben und auch nicht irgendwelche BB-Codes lernen wollen...

Und bei HTML komm ich da nich um JS herum, wenn ich da einen Text markiere und der dann nach klick auf einen Button fett o.ä. werden soll, so wie beim Posten in diesem Forum.

Nebenbei: Eine weiter Aufgabe ist es, 100% valides HTML zu generieren, da die Seite barrierefrei sein soll (BITV Priorität I zumindest).


Also, grobe Zusammenfassung der Lösung:

Ich lese das Bild ein und gebe die Daten an einen Base64-Codierer. Bastele das ganze in einen String rein ("&bild="+base64; )und schicke den als "POST" an den Server.
Das PHP-Script liest dann die Daten aus, speichert die dann in eine Datei (statt in der db) und indexiert die Datei in der Datenbank. mit den weiteren Infos, wie Alt-Text, Größe, gehört zu welcher(n) Bildergalerie(n), etc.

Hmmm... so einfach scheint das ja jetzt nicht zu gehen...
so wie ich diese Quelle hier verstehe, muss ich die HTTP-Anfrage incl. Header selbst generieren...
HTTP-Multipart-POST mit Java
__________________
  1. My software never has bugs. It just develops random features!
  2. Beta. Software undergoes beta testing shortly before it's released. Beta is Latin for 'still doesn't work.'
  3. There are two ways to write error-free programs. Only the third one works.

Geändert von Binary (30.05.2007 um 14:53 Uhr) Grund: Tutorial gefunden
Binary ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 30.05.2007, 15:27 Nach oben    #11
Benjamin Steininger
 
Benutzerbild von robo47
 
Registriert seit: 02.06.2005
Ort: weiher im tiefsten Odenwald
Beiträge: 1.208
Standard

Zitat:
Zitat von Binary Beitrag anzeigen

Nebenbei: Eine weiter Aufgabe ist es, 100% valides HTML zu generieren, da die Seite barrierefrei sein soll (BITV Priorität I zumindest).
Mal eine Anmerkung auch wenn es mit dem JAVA-Kram nichts zu tun hat:

Valides HTML, barrierefrei nach BITV 1 und das mit nem WYSIWYG-Editor den Leute bedienen die von HTML, Barrierefreiheit, Semantik etc keine Ahnung haben ? Und den du komplett selbst in Java schreiben willst/musst ?

Also die Chance dass das klappt, geht Stark gegen null, wenn die Leute nicht bereit sind sich auch damit zu Beschäftigen, wenn du sagst es es gibt da ein Gremium von Leute, dann sind als erstes wohl Bilder von diesen Leuten auch vorhanden, diese müssen/sollten sinnvolle Alt-Tags bekommen etc, ein fetter Text ist nicht gleich ein fetter Text, dafür gibts die Unterscheidung <strong> [Was z.b. in Programmen die Blinden Webseiten vorlesen stärker betont wird] und die Möglichkeit etwas mit CSS fett zu machen ..... Alles Dinge die jemand der etwas über den Editor ändert wissen muss, sonst wird das nix mit BITV.

Hier mal eine nette Liste mit allen relevanten Punkten für BITV Priorität 1:
http://www.rrze.uni-erlangen.de/dien...ritaet-i.shtml

mfg
robo47
robo47 ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 30.05.2007, 15:40 Nach oben    #12
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.134
Standard

Zitat:
Hmmm... so einfach scheint das ja jetzt nicht zu gehen...
so wie ich diese Quelle hier verstehe, muss ich die HTTP-Anfrage incl. Header selbst generieren...
HTTP-Multipart-POST mit Java
Ohne das gelesen zu haben: Multipart ist nur dann relevant, wenn du das ganze als Datei hochlädst. base64 ist aber reiner Text, also nichts anderes, als wie was in nem Textfeld stehen könnte. Ergo brauchst du keinen Multipart-POST. Deswegen hatte ich diese Lösung ja vorgeschlagen.
pago ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 30.05.2007, 15:50 Nach oben    #13
Benutzer
 
Registriert seit: 01.02.2005
Beiträge: 64
Standard

Naja - das mit dem nichts lernen wollen war auch etwas übertrieben dargestellt...
  1. Es gibt eine Schulung für alle Mitarbeiter
  2. Es gibt auch Mitarbeiter, die sich mit HTML/BITV auskennen (im Editor kann bei Bedarf der Quelltext editiert werden, wenn es ein Spezialfall erfordert)
  3. Es gibt eine kontextsensitive Hilfe, die einem jeden Arbeitsschritt erklärt (z.b. die Auswahl ob ich jetzt einen Text mittels CSS, oder Strong formatieren will)
  4. Der Editor beschränkt sich nur auf einen sehr kleinen Teil von HTML/CSS (Auswahl, ob Bspw. <strong> oder über CSS dann beim formatiern möglich)-> Fett, Kursiv, Unterstrichen, Zitate, Abküzungen/Akronyme, Listen - somit meines erachtens machbar
  5. Es ist kein Editor einer Seite, so wie Frontpage oder so, sondern eher wie eine Art HTML-Formular, das für die Seiten die entsprechenden Daten abfrägt.
Es gibt auf der Seite statische und dynamische Bereiche - die statischen sind sowieso barrierefrei entwickelt, die dynamischen werden, soweit dies durch das Programm kontrollierbar ist, auch barrierefrei erstellt.
Bei jedem Edit bekommen "wir, die ahnung haben" den Quelltext der Änderung per Mail und können so kurzfristig reagieren.
Bei dem Prog geht es nur darum, das jeder ohne sich zu 100% mit der Materie zu beschäftigen und auskennen zu müssen, einen Bericht, Ausschreibung, etc auf die Homepage setzen kann. Somit müssen wir admins nicht jeden Text in HTML/CSS formatieren, etc.

[EDIT]
@Pago:
Ok, danke, probier ich dann einfach mal... Die Sache mit dem String liegt mir grade eher, da aich dann nicht den kompletten Upload-Thread neu coden müsste.

aber eine kurze Frage:
ich dachte Base64 ist eine Codierung, die es erlaubt, zwischen versch. Betriebssystemen Texte auszutauschen, da deren 8-Bit Codierung auf eine 6-Bit heruntergerechnet wird - diese 6-bit Umrechnung wird zwar wieder rückgängig gemacht, aber beim umrechnen auf 8 bit wird dazu die Codierung des aktuellen OS herangezogen.
So haben wir das zumindest in IT vor 1-2 Jahren mal gelernt... Wenn also der Nutzer Windows nutzt und der Server Linux nutzt - kommt da dann das gleiche nach dem Rückcodieren wieder raus?
__________________
  1. My software never has bugs. It just develops random features!
  2. Beta. Software undergoes beta testing shortly before it's released. Beta is Latin for 'still doesn't work.'
  3. There are two ways to write error-free programs. Only the third one works.

Geändert von Binary (30.05.2007 um 15:55 Uhr) Grund: Antwort an Pago
Binary ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 30.05.2007, 15:51 Nach oben    #14
Johannes Müller
 
Benutzerbild von $traight-$hoota
 
Registriert seit: 15.09.2005
Ort: Königreich Flieden
Beiträge: 551
Standard

ähm ich habe das mit dem html-formular nur als beispiel gedacht, wo dateiuploads über php gehandhabt werden. dabei kann das php-skript über das $_FILES-array ganz einfach auf hochgeladene dateien zugreifen.

nen header zu senden is net so komploziert, das geht notfalls einfach per copy&paste übernehmen. für die von mir vorgeschlagene variante mit dem dateiupload musst du nen multipart-content erstellen, bei dem dann die hochzuladenden dateien als einzelne parts enthalten sind.
__________________
Weißt Bescheid - Scheiß wie weit
$traight-$hoota ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 30.05.2007, 16:08 Nach oben    #15
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.134
Standard

Ganz ehrlich? Ich hab keine Ahnung. Ich weiß nur, dass base64 zum einsatz kommst, wenn du ne E-Mail mit nem Anhang verschickst. Also wird's wohl auch mit binärdaten funktionieren.
pago ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 30.05.2007, 17:54 Nach oben    #16
Benutzer
 
Registriert seit: 01.02.2005
Beiträge: 64
Standard

Zitat:
Zitat von $traight-$hoota Beitrag anzeigen
ähm ich habe das mit dem html-formular nur als beispiel gedacht, wo dateiuploads über php gehandhabt werden. dabei kann das php-skript über das $_FILES-array ganz einfach auf hochgeladene dateien zugreifen.
ok, hab das als vorschlag gelesen, dass ich die Dateien dann manuell über ein HTML-Form uploaden soll.


Zitat:
Zitat von pago
Ich weiß nur, dass base64 zum einsatz kommst, wenn du ne E-Mail mit nem Anhang verschickst. Also wird's wohl auch mit binärdaten funktionieren.
ich hab mal bei Wikipedia nachgeschlagen...

Zitat:
Zitat von wikipedia
Base64 ist ein Begriff aus dem Computerbereich und beschreibt ein Verfahren zur Kodierung von 8-Bit-Binärdaten (z. B. ausführbare Programme, ZIP-Dateien), in eine Zeichenfolge, die nur aus wenigen, Codepage-unabhängigen ASCII-Zeichen besteht.
unter Codepage:
Zitat:
Zitat von wikipedia
Eine Codepage ist eine Tabelle mit einer Zeichenkodierung verschiedener Zeichen (...) Auf jedem Rechner kann eine unterschiedliche Codepage installiert sein. (...) Die relevanten Tabellen unter MS-DOS bzw. Microsoft Windows sind Codepage 437 bzw. Codepage 1252.
Bei eMails funktioniert das deshalb, weil für das MIME-Protokoll eine eigene 7-Bit Codepage existiert, die jedes eMail-Programm kennt - daher lassen sich die Daten wiederherstellen...
Von Windows auf Linux bsp. funktioniert das also nur per Mail, nicht aber über sonstige Datentabellen (außer du pfrimelst das per Hand auseinander und weißt welche Codepage im original im Einsatz war)
__________________
  1. My software never has bugs. It just develops random features!
  2. Beta. Software undergoes beta testing shortly before it's released. Beta is Latin for 'still doesn't work.'
  3. There are two ways to write error-free programs. Only the third one works.

Geändert von Binary (30.05.2007 um 17:55 Uhr) Grund: *schäm* unmengen an Tippfehlern
Binary ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 30.05.2007, 18:30 Nach oben    #17
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.134
Standard

Sorry, aber einer von uns kann definitiv nicht lesen:
Zitat:
in eine Zeichenfolge, die nur aus wenigen, Codepage-unabhängigen ASCII-Zeichen besteht.
Es funktioniert also ganz hervoragend.
pago ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 31.05.2007, 18:22 Nach oben    #18
Benutzer
 
Registriert seit: 01.02.2005
Beiträge: 64
Standard

Nicht ganz:

Codieren:
Texte in Codepage X des Quell-OS -> Codepage-unabhängigen ASCII-Zeichen

decodieren:
Codepage-unabhängige ASCII-Zeichen -> Codepage Y des Zielsystems...

wenn X = Y, dann klappt das; wenn X != Y, dann nicht

ich hätte etwas ausführlicher Zitieren sollen, ann wäre das nicht passiert
__________________
  1. My software never has bugs. It just develops random features!
  2. Beta. Software undergoes beta testing shortly before it's released. Beta is Latin for 'still doesn't work.'
  3. There are two ways to write error-free programs. Only the third one works.
Binary ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 31.05.2007, 20:33 Nach oben    #19
Benutzer
 
Registriert seit: 01.02.2005
Beiträge: 64
Standard

So, ich meld mich nochmal kurz - ich bin jetzt bis zum 10.6. im Urlaub.

Wundert euch also nicht, wenn ich nicht schreibe^^.

Euch allen ne schöne Woche!
__________________
  1. My software never has bugs. It just develops random features!
  2. Beta. Software undergoes beta testing shortly before it's released. Beta is Latin for 'still doesn't work.'
  3. There are two ways to write error-free programs. Only the third one works.
Binary ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 31.05.2007, 21:14 Nach oben    #20
Erfahrener Benutzer
 
Benutzerbild von JumperII
 
Registriert seit: 27.02.2006
Beiträge: 159
Standard

Also noch einmal BASE64 ist eine Kodierungslogik, die vereinfacht gesagt 3 Bytes durch 4 Basiszeichen auf Basis 64 (64 Zeichen) abbildet. Kodierung <-> Dekodierung erfolgt 1:1 ohne irgendeine Wandlung.

Hier mal die entsprechende Java-Methoden:
Code:
private static String encodeBase64String(byte abyte0[], int i, int j)
  {
    if(abyte0 == null)
      return null;
    int k = 0;
    int l = 0;
    StringBuffer stringbuffer = new StringBuffer(((j + 2) / 3) * 4);
    for(int i1 = 0; i1 < j; i1++)
    {
      k = (k << 8) + (abyte0[i + i1] & 0xff);
      for(l += 8; l >= 6;-)
      {
        l -= 6;
        stringbuffer.append("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(k >>> l & 0x3f));
      }

    }

    if(l == 2)
    {
      stringbuffer.append("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((k & 3) << 4));
      stringbuffer.append("==");
    } else
    if(l == 4)
    {
      stringbuffer.append("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((k & 0xf) << 2));
      stringbuffer.append('=');
    }
    return stringbuffer.toString();
  }

  private static byte[] decodeBase64String(String s)
  {
    if(s == null || s.length() < 4)
      return null;
    int i = s.length();
    int j = 0;
    if(s.substring(i - 2).equals("=="))
    {
      i -= 2;
      j = 2;
    } else
    if(s.substring(i - 1).equals("="))
    {
      i--;
      j = 4;
    }
    int k = (i * 6 + j) / 8;
    byte abyte0[] = new byte[k];
    int l = 0;
    int i1 = 0;
    j = 0;
    for(int j1 = 0; j1 < i; j1++)
    {
      char c = s.charAt(j1);
      int k1 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(((int) (s.charAt(j1))));
      if(k1 == -1)
        return null;
      j += 6;
      i1 = i1 << 6 | k1 & 0x3f;
      if(j >= 8)
      {
        j -= 8;
        abyte0[l++] = (byte)(i1 >>> j & 0xff);
      }
    }

    return abyte0;
  }
Ich denke, das ist mehr als selbst erklärend

Gruß,
Jumper, the II.
JumperII ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
PingBacks sind an
RefBacks sind aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Java Applet soll Daten an ein PHP Script senden flanger Allgemeine Java-Programmierung 5 16.05.2007 16:52
PHP Script alle x Sekunden ausführen | .bat Script? dsxs Sonstige Programmiersprachen 2 03.08.2006 12:15
[JAVA] Wie man aus Java mit einem PHP-Script kommuniziert sparrow Tutorials 0 25.03.2006 22:24
Java Script & Java manuel Allgemeine Java-Programmierung 8 21.12.2005 19:58
[BUCH] Java ist auch eine Insel kampet Literatur 5 22.02.2005 14:40


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:03 Uhr.


Powered by vBulletin® Version 3.7.4 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45