Binary File Output

H

huffman5431

Gast
Habe mal die Huffman Kodierung implementiert und will jetzt den Text den ich vorher kodiert habe, in einer Datei speichern.
Bei all meinen Versuchen bisher war die kodierte Datei wesentlich größer als die ursprünglich txt datei und das ist ja nicht Sinn der Sache bei der Datenkompression :D
Kann mir jemand sagen was ich genau machen muss um etwas in binärer Form mit Java zu speichern ohne, dass es dann wieder als ascii oder sonst was interpretiert wird?
Als Bestriebssystem benutze ich übrigens Kubuntu, falls das einen Unterschied macht.
 

XHelp

Top Contributor
Java:
FileOutputStream fos = new FileOutputStream(filename);
DataOutputStream dos = new DataOutputStream(fos);
out.writeByte(12);
out.close();
Irgendwie so in der Art. Wie versuchst du es denn bis jetzt?
 
H

huffman5431

Gast
genau so hab ich es bisher probiert :D
aber es stellte sich raus, egal welche Dateiendung ich nehme,
die Datei ist immer um ein vielfaches größer als das Original.
 
H

huffman5431

Gast
Ich will ja nicht etwas als zip oder gzip packen damit die datei kleiner wird,
ich will eine Binärdatei erstellen, in die ich '0' oder '1' rein schreiben kann.
 
H

huffman5431

Gast
Stimmt, aber wenn ich bytes in eine txt datei schreibe wird nicht 1 Bit für 0 oder eins verwendet, sondern jede Ziffer besteht aus 7 Bit ( nach ascii ). Und damit ist die "komprimierte" Datei wesentlich größer als der Text.
 

Michael...

Top Contributor
jede Ziffer besteht aus 7 Bit
???:L
Wie schreibst Du denn die Daten raus?
Wenn ich mit folgendem Code in eine Datei schreibe:
Java:
try {
	File file = new File("C:/test.txt");
	FileOutputStream out = new FileOutputStream(file);
	byte[] b = new byte[1];
	b[0] |= 1;
	out.write(b);
	out.close();
} catch (Exception e) {
	e.printStackTrace();
}
steht genau ein Byte in der Datei: 00000001
 

XHelp

Top Contributor
Im Grunde sollte die Aussage (glaube ich) heißen: wenn man "01010111" als Text hinschreibt verbraucht es mehr Platz als wenn man es als Byte hinschreibt.
 
H

huffman5431

Gast
"steht genau ein Byte in der Datei: 00000001"

genau das ist ja das Problem :D
ich möchte, dass 0 oder 1 nur 1Bit an Speicherplatz belegt, statt 1 Byte
 

Michael...

Top Contributor
Naja wie schon mal erwähnt ist die kleinste Einheit, die man in eine Datei schreiben kann ein Byte
Du musst einfach nur 8 Bit zusammenfassen, bevor Du sie als Byte rausschreibst.
 
H

huffman5431

Gast
Hey Danke !
Jetzt scheint es zu funktionieren.
Es werden keine 0 und 1 mehr im normalen texteditor angezeigt.
Die "kodierte" datei ist aber immernoch wesentlich größer...
ich werde nochmal nachprüfen ob ich ein Fehler bei der Implementierung der Huffman Kodierung gemacht habe,
das sollte aber eigt nicht der Fall sein.
 
H

huffman5431

Gast
Habe den Fehler gefunden, lag am Programmcode,
mit der von Michael beschriebenen Methode klappt es jetzt wunderbar,
nochmals Danke !
 

Syntax6

Mitglied
"steht genau ein Byte in der Datei: 00000001"

genau das ist ja das Problem :D
ich möchte, dass 0 oder 1 nur 1Bit an Speicherplatz belegt, statt 1 Byte

Servus

Ist das denn überhaupt möglich ? Ich dachte das man in einem "int" nur 1 Byte spiechern kann also 8 Bit ? Gibt es Speichermöglichkeiten wo nur ein Bit gespeichert werden kann ? ???:L


lg
S6
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M File Binary Representation Allgemeine Java-Themen 1
B Garbage Collection Logfile: Binary File Allgemeine Java-Themen 2
E Binary file einlesen Allgemeine Java-Themen 1
A Class File zur Laufzeit laden ohne den Binary Name zu kennen Allgemeine Java-Themen 11
KonradN Mal eine Frage zu Binary Serialization Allgemeine Java-Themen 15
D Selenium - cannot find Chrome binary Allgemeine Java-Themen 6
S String zu binary und zurück - Problem mit unsigned/signed bytes Allgemeine Java-Themen 2
H String in binary umwandeln? Allgemeine Java-Themen 6
V "Java(TM) Platform SE binary funktioniert nicht mehr" Allgemeine Java-Themen 5
TiME-SPLiNTER Binary BufferedImage automatisch croppen Allgemeine Java-Themen 4
T (Binary)Datei einlesen, Inhalt ändern, Datei schreiben Allgemeine Java-Themen 4
G BitSet to binary Allgemeine Java-Themen 4
H "File too large" - genauere IOException-Behandlung Allgemeine Java-Themen 5
H Sicherer File Tresor Allgemeine Java-Themen 13
W Jar-File Start nur über Terminal Allgemeine Java-Themen 13
R 11 GB File lesen ohne zu extrahieren Filedaten Bereich für Bereich adressieren dann mit Multi-Thread id die DB importieren Allgemeine Java-Themen 3
D Read JSON File Problem Allgemeine Java-Themen 9
S Umstellung von File auf Path - Probleme mit Stream Allgemeine Java-Themen 5
C jar File mehrfach aufrufen (als Windows Dienst) Allgemeine Java-Themen 5
N File Path mit Variablen angeben Allgemeine Java-Themen 1
izoards Zugriff auf gemeinsame Ressource (CSV-File) Allgemeine Java-Themen 3
S Class File Editor -> Source not found Allgemeine Java-Themen 4
F jar File ausführen Allgemeine Java-Themen 14
N jar File auf Mac mit Doppelklick starten Allgemeine Java-Themen 5
O Input/Output java.io.File beenden Allgemeine Java-Themen 5
G File not found - nach dem Kompilieren Allgemeine Java-Themen 6
T Jar File zu exe... Allgemeine Java-Themen 3
M Foreign Memory API / Memory-Mapped File Allgemeine Java-Themen 0
R Delete files before creating new from temp using Java file method Allgemeine Java-Themen 1
S File lesen und schreiben Java 6 Allgemeine Java-Themen 2
T String-Manipulation beim Ablauf in Eclipse und als JAR-File Allgemeine Java-Themen 8
F Input/Output FileNotFoundException, obwohl File existiert Allgemeine Java-Themen 5
G Excel File öffnen, in Zelle schreiben, abspeichern Allgemeine Java-Themen 6
L JAR-File auf Ilias (LMS) laufen lassen Allgemeine Java-Themen 0
ralfb1105 Classpath Directory fuer Properties File Allgemeine Java-Themen 2
L File beim Kopieren in einen anderen Ordner umbenennen Allgemeine Java-Themen 6
J File in Package erstellen & lesen mit Programmstart in externe Projekt Allgemeine Java-Themen 3
I File ausführen und mein Programm bearbeiten lassen Allgemeine Java-Themen 11
A File lesen Codierung Charset Allgemeine Java-Themen 5
J .java-Dateitext Compile zur Laufzeit ohne File Allgemeine Java-Themen 15
M Key-File im selben Ordner speichern? Allgemeine Java-Themen 18
I TrueZip add file to archive Allgemeine Java-Themen 10
T Probleme mit dem Pfad zum Propertie file Allgemeine Java-Themen 7
J ftp - delete file ohne appache Allgemeine Java-Themen 8
X Klassen File-Klasse wird als Directory markiert Allgemeine Java-Themen 8
T ImageIO.read -> Can`t read input file Allgemeine Java-Themen 11
L Applet Problem "security: Trusted libraries list file not found" ? Allgemeine Java-Themen 7
C Swing File[] als klickbare links in irgendeinem Swing Element Allgemeine Java-Themen 3
H Kennt sich jemand mit Eclipse und dem Thema Jar-File aus ? Allgemeine Java-Themen 6
H Laden einer (Resourcendatei) aus einem Jar-File Allgemeine Java-Themen 17
C Authentifizierung mit java.nio.file? Allgemeine Java-Themen 5
L CSV File lesen, in ArrayList speichern und ausgeben Allgemeine Java-Themen 3
M xlsx File auslesen Exception occured Allgemeine Java-Themen 13
offi Drag and Drop mehrerer File aus Explorer in JTable Allgemeine Java-Themen 1
G Java/LibGDX File Loading Exception Allgemeine Java-Themen 2
Cromewell JavaFX FXML-File lädt unter Ubuntu nicht Allgemeine Java-Themen 7
D Java Anwendung mit dll File Allgemeine Java-Themen 5
AssELAss Log4j Logging Ausgabe für jede Klasse in seperates File Allgemeine Java-Themen 2
thet1983 Input/Output read properties file from classpath Allgemeine Java-Themen 3
J Umwandeln von URL zu File und danach kopieren geht nicht Allgemeine Java-Themen 1
J Properties file ändern Allgemeine Java-Themen 12
S Executable Jar File startet nicht unter Windows 10 Allgemeine Java-Themen 3
B Objekte anhand von Properties file Allgemeine Java-Themen 41
Dechasa Input/Output Write into File Allgemeine Java-Themen 2
N Maven ObjectMapper Error wenn das File gespeichert wird Allgemeine Java-Themen 0
H Security Manager (IIOException: Can't read input file!) Allgemeine Java-Themen 2
H File.listFiles() funktioniert nicht... Allgemeine Java-Themen 10
C Input/Output Problem bei Datei verschiebung mit File.move und Paths.get() Allgemeine Java-Themen 26
X Zeile unter einer bestimmen Zeile hinzufügen(File) Allgemeine Java-Themen 1
F Open source file übersetzen Phython -> Java Allgemeine Java-Themen 4
C file.delete() funktioniert bei zweiten aufruf nicht mehr Allgemeine Java-Themen 3
M Desktop jar File icon Ändern? Allgemeine Java-Themen 14
O Sax-Parser ließt XML-File doppelt Allgemeine Java-Themen 1
J Java Software Compare Files und Neue File erstellen Allgemeine Java-Themen 0
Thallius Custom File Chooser Allgemeine Java-Themen 1
C .jar File lässt sich nur über Konsole öffnen Allgemeine Java-Themen 1
J Java Download Filedownload File.getFileName Allgemeine Java-Themen 3
R Java .class-File-Konstrunkt mit Programm visualisieren Allgemeine Java-Themen 18
G SecurityManager/Policy-File/Reflection Allgemeine Java-Themen 0
M pdf File bzw. ausgefüllte pdf Formulare drucken Allgemeine Java-Themen 2
S Input/Output File Not Found FileReader Allgemeine Java-Themen 6
Thallius Serialisiertes File kann auf anderem Rechner nicht geladen werden Allgemeine Java-Themen 12
P Java Dynamic Web Project -> config File Allgemeine Java-Themen 1
S runnable jar file in Verbindung mit itext Allgemeine Java-Themen 3
D Variablen java.io.File zum vergleichen abspeichern Allgemeine Java-Themen 1
M File IO Klasse ... wie einbinden Allgemeine Java-Themen 6
O Freies Tool zum Jar-File obfuscaten gesucht! Allgemeine Java-Themen 5
F File.listFiles ohne .sort Allgemeine Java-Themen 6
B XML File JAXB Allgemeine Java-Themen 0
S Platzverbrauch, File oder String Allgemeine Java-Themen 14
J Runnable jar-File: Fehlermeldung Allgemeine Java-Themen 2
P Kurze Frage: aus einer File die Zeilenanzahl auslesen Allgemeine Java-Themen 9
K Gepacktes Jar-File gibt beim Doppelklick eine Exception aus Allgemeine Java-Themen 4
P java.nio.file unter Java 6 verwenden Allgemeine Java-Themen 4
A TXT File einlesen unterschiedliche Zeilenlänge Allgemeine Java-Themen 9
B Finde letztes veränderte File Allgemeine Java-Themen 4
E Zip-File entpacken: unterschiedlicher Zeitaufwand bei unterschiedlicher Puffergröße Allgemeine Java-Themen 2
Guybrush Threepwood File.canWrite() und UAC Allgemeine Java-Themen 7
N Input/Output Mit Windows 7 erzeugtes zip-File in Java 7 öffnen Allgemeine Java-Themen 5
H XML-File mit Java erzeugt Frage Allgemeine Java-Themen 10

Ähnliche Java Themen


Oben