RandomAccesFile ? Wie kann das sein?

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Also ich habe so ne Art Installer geschrieben. Nix besonderes.
Kopiert eigentlich nur ne paar jar files.

Läuft alles wunderbar, aber da ergibt sich etwas seltsames, was nicht sein darf bei mir.

Das file zu kopieren ist 2,42 kB.
Aber nach dem kopieren ist es 2,87 kB.

:?: :?: :?: :?: :?: :?: :?: :?: :?: :?:
Wie kann denn sowas seien????
Dachte erst ich habe nen Fehler in meinen Quellcode, aber scheint nit so, weil er das
nur mit einem File von vielen so macht. Die anderen kopiere ich ganz genauso und die bleiben
gleich groß.

Bitte um eueren Rat.

P.S.: kopieren einfach byteweise bis zur Länge der Quelldatei.
 

mikachu

Top Contributor
hat das kopierte file denn noch den gleichen inhalt wie das quell-file?
wenn ja, isses doch egal :wink:
 

The_S

Top Contributor
Das muss ein Fehler im Quellcode sein! Aber warum kopierst du so elendig langsam byte für byte und das auch noch mit RandomAccesFile? verwende doch lieber einen FileChannel! Da musst du dich ums kopieren gar nicht mehr kümmern und performant ist es obendrein auch!
 
G

Gast

Gast
Nein es hat nicht mehr den selben inhalt. Und ein fehler im Code ist ausgeschlossen, da genau auf dieselbe Art und Weise weitere weitere jar files kopiert werden und du sind korrekt.
Aber diese eine ist kaputt.
Wenns hilft die files werden in lib\security kopiert.
Vielleicht hat das damit zu tun???
 
G

Gast

Gast
Achso, wie funktioniert das mit dem FileChannel? Kenne ich gar nicht.
 

The_S

Top Contributor
Gast hat gesagt.:
Und ein fehler im Code ist ausgeschlossen, da genau auf dieselbe Art und Weise weitere weitere jar files kopiert werden und du sind korrekt.
Aber diese eine ist kaputt.

Ausnahmen bestätigen die Regeln. Nur weil mein Programm 1000 Datensätze korrekt bearbeitet und der 1001 falsch ist, hat der Datensatz keinen Fehler, sondern vermutlich eher mein Programm! Wenn du nicht mit FileChannel arbeiten möchtest, dann zeig doch mal code.
 
G

Guest

Gast
So dann hier mal der Code:

Code:
rafileSource = new RandomAccessFile(new File(filesToIntall[x]),"r");
rafileDestination = new RandomAccessFile(new File(pathToLibExt + filesToIntall[x]),"rw");
		for(int i=0; i<rafileSource.length(); i++)
			rafileDestination.write(rafileSource.read());

Wüsste nit was da verkehrt sein soll!! :meld:
 

The_S

Top Contributor
hm, evtl. hast du unterschiedliche Quelldateien versehntlich in der Zieldatei gleich benannt. Dadurch würdest du praktisch zwei Dateien in eine Schreiben. So oder sowas ähnliches könnte ich mir jetzt noch als Ursache denken.
 
G

Gast

Gast
Aber filechannel funktionierts, da drängt sich aber die Frage auf warum nit mitn RandomAccesFile??
 

The_S

Top Contributor
Mit RandomAccesFile gehts genauso. Du hast vermutlich irgendwo in dienem Code (muss ja net unbedingt beim Schreiben selbst sein) einen klitzekleinen Fehler, der dieses sonderbare verhalten verursacht.
 
G

Gast

Gast
Habe ich mir auch schon gedacht, aber ich denke mal das die VM eine Prüfung von Dateien vornimmt die in lib\security kopiert werden und deshalb wohl irgendwelche Signaturen oder ähnl. anhängt. Obwohl, dann stellt sich wiederum die Frage warum das nur beim RandomAccesFile so ist.
 

The_S

Top Contributor
Was hast du eigentlich immer mit deinen lib/security? Is doch vollkommen egal, wo Daten hingeschrieben werden ???:L
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
A RandomAccesFile Allgemeine Java-Themen 2
E Angabe wie groß Array sein soll und in for-schleifen diesen Array füllen Allgemeine Java-Themen 3
S Validation Null aber nicht Blank und muss Email sein Allgemeine Java-Themen 22
pkm Kann eine ServerSocket-Klasse nicht stateful sein? Allgemeine Java-Themen 4
P Programm darf nicht mehrfach startbar sein Allgemeine Java-Themen 16
W Warum muss void main() public sein? Allgemeine Java-Themen 3
FrittenFritze Batik und sein "ProtocolHandler" für xlink:href Allgemeine Java-Themen 1
R Input/Output java.io.EOFException, obwohl sie abgefangen sein sollte? Allgemeine Java-Themen 3
L Wie genau soll ein Klassendiagramm sein Allgemeine Java-Themen 4
L kann in einem array der 1. index größer als der 2. sein? Allgemeine Java-Themen 10
A java logging api scheint nicht thread save zu sein Allgemeine Java-Themen 22
R Syntax Error, der keiner sein sollte Allgemeine Java-Themen 12
J Interpreteraufruf bring Error obwohl dies nicht sein dürfte. Allgemeine Java-Themen 24
C JAVA Anwendung - Was muss auf dem Server installiert sein? Allgemeine Java-Themen 6
M Wie schwer kann es eigentlich sein. Allgemeine Java-Themen 7
C Thread zu langsam ==> kann doch nicht sein oder? Allgemeine Java-Themen 9
T Klasse soll Object sein->um in JTabbedPane einzufügen Allgemeine Java-Themen 2
D NullPointerException wo keine sein sollte. Allgemeine Java-Themen 2
S Also Soooooooooo toll scheint das ja nicht zu sein Allgemeine Java-Themen 17

Ähnliche Java Themen

Neue Themen


Oben