Properties Datei nicht löschbar

T

Tomate_Salat

Gast
Hi,

ich bin gerade dabei eine umfangreiche DownloadManager-API zu entwickeln. Bis jetzt läuft alles gut. Meine Api kann bereits:
- Fortschritt in Prozent und totalen Werten zurückgeben
- Übertragungsrate anzeigen
- Zeitanzeige (wie lange der download läuft)
- Zeitschätzung (und sie ist genauso daneben wie jeder andere auch, also perfekt funktionierend :lol:)
- Anzeigen des Mime-types
- (Einen abgebrochenen Download fortsetzen)

So, der letzte Punkt macht mir Probleme. Die realisierung ist in der Theorie einfach: Aktuelle Byte-Zahl + aktuelle Bytes iwo speichern. Dafür lege ich mir einfach 2 temporäre Dateien an. Meine Speicherungen erfolgen dann so:

Byte-Speicherung
Dafür erstellte ich mir eine klasse, die den
Code:
ByteArrayOutputStream
erbt +
Code:
Serializable
implementiert und ich dieses Objekt dann mittels
Code:
ObjectOutputStream
alle hundertstell sekunde speichere.

Byte anzahlsspeicherung
also im prinzip
Code:
ByteArrayOutpustream.size();
diese Zahl verwende ich später im
Code:
InputStream.skip();
um auf meine gewünschte Position zu gelangen. Wenn ich den Speichervorgang mittels
Code:
Property.store(FILE);
mache, kann ich die datei mittels
Code:
File.delete();
am Download-Ende nicht mehr löschen. Da ich später evtl. in dieser Datei mehr als eine Information speichern will, wollte ich hier gerne eine propertie-Datei nehmen, also wie mach ich diese Datei löschbar?!

MFG

Tomate_Salat
 

Murray

Top Contributor
Byte anzahlsspeicherung
also im prinzip
Code:
ByteArrayOutpustream.size();
diese Zahl verwende ich später im
Code:
InputStream.skip();
um auf meine gewünschte Position zu gelangen. Wenn ich den Speichervorgang mittels
Code:
Property.store(FILE);
mache, kann ich die datei mittels
Code:
File.delete();
am Download-Ende nicht mehr löschen. Da ich später evtl. in dieser Datei mehr als eine Information speichern will, wollte ich hier gerne eine propertie-Datei nehmen, also wie mach ich diese Datei löschbar?!
Meinst du java.util.Properties.store()? Zeig doch mal den Code zum Speichern.

<OT>
Byte-Speicherung
Dafür erstellte ich mir eine klasse, die den
Code:
ByteArrayOutputStream
erbt +
Code:
Serializable
implementiert und ich dieses Objekt dann mittels
Code:
ObjectOutputStream
alle hundertstell sekunde speichere.
Du speicherst alle Daten alle 10ms komplett auf die Platte? Das klingt aber ausgesprochen ineffizient.
</OT>
 
Zuletzt bearbeitet:
T

Tomate_Salat

Gast
Meinst du java.util.Properties.store()? Zeig doch mal den Code zum Speichern.

Java:
props.setProperty("BYTE", "" +baos.size());                                
                                
FileOutputStream fouts  = new FileOutputStream(tmp);
props.store(fouts, "");
fouts.close();

Du speicherst alle Daten alle 10ms komplett auf die Platte? Das klingt aber ausgesprochen ineffizient.

die vorherigen Daten werden überspeichert ;-) und die Daten liegen ja schon im ByteAr... vor. Wenn du eine bessere Lösung hast, als her damit ;-). Das System habe ich mir vom Firefox z.B. abgeschaut. Dieser legt auch eine Temporäre Datei mit infos zum Download an (nur dass es bei mir derzeit 2 sind^^). Werde aber mal noch eine Funktion einbauen, die auf wunsch das zwischenspeichern deaktiviert.
 

Murray

Top Contributor
die vorherigen Daten werden überspeichert ;-) und die Daten liegen ja schon im ByteAr... vor. Wenn du eine bessere Lösung hast, als her damit ;-). Das System habe ich mir vom Firefox z.B. abgeschaut. Dieser legt auch eine Temporäre Datei mit infos zum Download an (nur dass es bei mir derzeit 2 sind^^).
Gegen das Zwischenspeichern an sich ist ja nichts einzuwenden, aber doch nicht immer wieder das ganze Byte-Array - es würde doch reichen, die Bytes zu schreiben, die seit dem letzten Speichern dazugekommen sind.

Und muss man wirklich die Anzahl der gelesenen Bytes getrennt speichern? Es reicht doch, in der temporären Datei die Bytes zu zählen - dahinter müsste man wieder aufsetzen, wenn man den Download fortsetzen will. Wenn die Anzahl der Bytes redundant gespeichert ist, läuft man doch Gefahr, dass sich diese Informationen auseinanderlaufen - denn zwischen zwei Zwischenspeicherungen können ja wieder einieg Bytes gelesen worden sein.
 

Janus

Bekanntes Mitglied
Wenn die Daten einfach immer schön auf die Platte geschrieben werden, hast du beim Fortsetzen doch die Information, die nötig ist, um den Download fortzusetzen: nämlich die Anzahl der bereits geschriebenen Bytes. Einfach durchzählen und fertig.
 
T

Tomate_Salat

Gast
Ist tmp ein String oder ein File?

File

Gegen das Zwischenspeichern an sich ist ja nichts einzuwenden, aber doch nicht immer wieder das ganze Byte-Array - es würde doch reichen, die Bytes zu schreiben, die seit dem letzten Speichern dazugekommen sind.

Ja gut ich speichere derzeit ein gesamtes Objekt ab :-/. Wäre vllt besser wenn ich das lesen mit dem
Code:
ByteArrayInputstream
löse.

denn zwischen zwei Zwischenspeicherungen können ja wieder einieg Bytes gelesen worden sein.

:autsch: da war ich zu kurzsichtig/optimistisch, sehr guter Einwand

Wenn die Daten einfach immer schön auf die Platte geschrieben werden, hast du beim Fortsetzen doch die Information, die nötig ist

=> Mein bereits erwähntes Prinzip das ich anwende ;-) mir ging es um die Umsetzung die ich Aufgrund von Murray jz ein bisschen umstellen werde

MFG

Tomate_Salat
 
T

Tomate_Salat

Gast
ist ja schon längst wieder mitlerweile verbannt (war eine Notlösung und in der Sehnsucht zur Mittagspause viel mir nichts bessers ein^^). Was ich noch nicht umgesetzt habe, war dass ich nur neue Daten hinzufüge, bin mir noch nicht sicher wie ich das mit dem ByteArr... umsetzen werden, wobei das nicht allzuschlimm wäre, wenn nicht, da der Manager (für seinen ersten geplanten Einsatz) eh nur Bilder laden soll - Was nicht heisen soll, dass ich das nicht gerne Optimieren würde. Ansonsten funktioniert alles wunderbar bis jetzt.

Edit Oder kurz: Ich habe nur eine Datei, die die Bytes enthält und am Ende des Downloades vom Manager entfertn wird
 
Zuletzt bearbeitet von einem Moderator:
Ähnliche Java Themen
  Titel Forum Antworten Datum
W Input/Output Kann .properties Datei in kompilierter .jar nicht ändern Allgemeine Java-Themen 2
T Properties Datei nicht jedes mal neu schreiben? Allgemeine Java-Themen 2
P Properties liest nicht alles aus Datei aus Allgemeine Java-Themen 17
V log4j.properties wird in der jar Datei nicht gefunden? Allgemeine Java-Themen 2
D JAVA - Properties Datei mit Userdaten Allgemeine Java-Themen 7
D Properties Datei, Eingabequelle Allgemeine Java-Themen 6
R Properties Datei aus Applikationsverzeichnis lesen Allgemeine Java-Themen 5
K Serialisierung in Properties-Datei möglich? Allgemeine Java-Themen 3
G externe Properties datei aus Jar File heraus lesen Allgemeine Java-Themen 12
M Databinding von Object zu properties-Datei Allgemeine Java-Themen 10
L "globale" properties Datei Allgemeine Java-Themen 4
MQue properties- Datei Allgemeine Java-Themen 2
R Properties Datei ändern Allgemeine Java-Themen 4
G properties datei aktualisieren Allgemeine Java-Themen 4
A Mehrzeiligen Eintrag in Ressourcebundle (.properties-Datei) Allgemeine Java-Themen 8
G Properties Datei verschlüsseln. WIE? Allgemeine Java-Themen 6
G Einzelne Keys aus Properties-Datei auslesen Allgemeine Java-Themen 4
S Zugriff auf Properties-Datei Allgemeine Java-Themen 10
J ResourceBundle / properties-datei während der Laufzeit verän Allgemeine Java-Themen 6
W Ein paar Fragen zu .properties und .css Allgemeine Java-Themen 6
S Test mit Werten aus der .properties Allgemeine Java-Themen 4
S class path resource [config.properties}] cannot be opened because it does not exist Allgemeine Java-Themen 4
ralfb1105 Classpath Directory fuer Properties File Allgemeine Java-Themen 2
K Properties serializable machen Allgemeine Java-Themen 6
KeVoZ_ Properties mit String auslesen Allgemeine Java-Themen 11
thet1983 Input/Output read properties file from classpath Allgemeine Java-Themen 3
Baldur BeanInfo für Properties-UI? Allgemeine Java-Themen 1
J Properties file ändern Allgemeine Java-Themen 12
B Objekte anhand von Properties file Allgemeine Java-Themen 41
Thallius Speicherverhalten von Properties und mehreren Threads Allgemeine Java-Themen 5
T [log4j] Wie nutzt man log4j.properties? Allgemeine Java-Themen 7
I Best Practice Properties auslesen und splitten (RegExp?) Allgemeine Java-Themen 0
OnDemand Lesen aus Properties Allgemeine Java-Themen 7
M StripesResources.properties Allgemeine Java-Themen 2
GUI-Programmer Mehr als Properties Allgemeine Java-Themen 6
C Dynamisches und sortiertes Auslesen von Properties Allgemeine Java-Themen 2
Mr. Pink Erste Schritte Checkstyle.properties Allgemeine Java-Themen 3
B Properties File Liste Allgemeine Java-Themen 3
X Probleme mit meinem Properties Allgemeine Java-Themen 9
T Wahrscheinlich Problem mit log4j.properties Allgemeine Java-Themen 19
S Stilfrage bezüglich Beans mit Collection-Properties Allgemeine Java-Themen 2
C JAR, Pfad und Properties Allgemeine Java-Themen 17
reibi Separator in java.util.Properties-Files Allgemeine Java-Themen 3
M Probleme mit UTF-8 und properties Allgemeine Java-Themen 6
C log4j.properties wird nicht verwendet?? Allgemeine Java-Themen 3
S Properties binden Allgemeine Java-Themen 2
nrg Knotenpunkte in Properties Allgemeine Java-Themen 9
U Properties in Jar Files Allgemeine Java-Themen 3
S Properties-Dateien anwenden Allgemeine Java-Themen 8
G Alternative zu .properties Dateien Allgemeine Java-Themen 20
nabla Gutes einlesen von Konfigurationsdateien (Properties?) Allgemeine Java-Themen 11
E Properties +SerialPort Allgemeine Java-Themen 9
H Java Properties Allgemeine Java-Themen 5
A kann nicht auf properties außerhalb jar zugreifen Allgemeine Java-Themen 3
T CP Problem: Webstart + Logging properties file + eigener Handler Allgemeine Java-Themen 7
Y Properties verwalten! Allgemeine Java-Themen 3
F Properties verschlüsselt speichern Allgemeine Java-Themen 5
W Properties-Klasse: mehrere Parameter-Belegungen übergeben? Allgemeine Java-Themen 2
K settings.properties in den src-ordner schreiben Allgemeine Java-Themen 2
J Wo werden die System properties gespeichert Allgemeine Java-Themen 12
DEvent log4j, commons logging, log4j.properties and co Allgemeine Java-Themen 12
D Ordner mit *.properties in classpath ? Allgemeine Java-Themen 5
P Encoding-Probleme bei Properties-Dateien Allgemeine Java-Themen 5
A Hardware Properties auslesen Allgemeine Java-Themen 10
J Properties sortieren Allgemeine Java-Themen 6
I Properties.contains("Hell*orld"); Allgemeine Java-Themen 14
G Probleme beim Sichern von Properties Allgemeine Java-Themen 2
N Java Properties Allgemeine Java-Themen 14
V Properties Key als String mit =? Allgemeine Java-Themen 3
G Beans und transiente Properties Allgemeine Java-Themen 4
M Pattern aus Properties Allgemeine Java-Themen 3
R Problem bei schreiben von properties Allgemeine Java-Themen 6
P log4j: Übersicht der Properties Allgemeine Java-Themen 5
R Properties dateien in Jar beschreiben Allgemeine Java-Themen 2
L properties auslesen funktioniert nicht(java.util.Properties) Allgemeine Java-Themen 3
J Properties editieren. Allgemeine Java-Themen 10
V INI Files, Properties etc. Allgemeine Java-Themen 7
K Cast von Properties und Hashmap Allgemeine Java-Themen 9
B Wohin mit log4j.properties Allgemeine Java-Themen 2
B MannoMann Properties Allgemeine Java-Themen 12
O Mit jsoup Text aus HTML-Datei rausgrabben Allgemeine Java-Themen 29
Zrebna Aus einer jar-Datei eine exe-Datei erzeugen lassen Allgemeine Java-Themen 37
kodela StatusBar-Anzeigen auch in Log-Datei ausgeben Allgemeine Java-Themen 3
G Maven Projekt JAR-Datei Allgemeine Java-Themen 6
E XML - Datei Darstellung in IntelliJ als Baum Allgemeine Java-Themen 2
Thomasneuling Java Jar datei erstellen, von Projekt, dass auch Javafx Dateien, FXML Dateien und CSS Dateien, sowie Bilder enthält? Allgemeine Java-Themen 14
D Erste Schritte Mp3 Datei kann nicht von der Festplatte geöffnet werden - mit ChatGPT erstellt Allgemeine Java-Themen 7
J Filenotfoundexception obwohl Datei existiert Allgemeine Java-Themen 6
M Java Überprüfen ob .exe-Datei bereits ausgeführt wird Allgemeine Java-Themen 2
S .exe Datei/Programm auslesen? Allgemeine Java-Themen 2
E Datei verschoben Event Allgemeine Java-Themen 3
D Datei mit "Kohsuke GitHub API" in Repository hochladen Allgemeine Java-Themen 2
S Bookmark HTML Datei einlesen, alle Links erhalten und manche editieren..? (aktuell JSoup) Allgemeine Java-Themen 4
melaniemueller Einzelne Zeile aus einer txt Datei in einem String speichern Allgemeine Java-Themen 12
G JavaFX Maven Projekt als .exe Datei exportieren Allgemeine Java-Themen 10
J (Geplante) Änderungen an einer Datei vorübergehend speichern und anwenden? Allgemeine Java-Themen 12
Neumi5694 Datei komprimiert Allgemeine Java-Themen 6
_user_q Obfuscate einer .jar-Datei mit ProGuard? Allgemeine Java-Themen 2
_user_q Verknüpfung einer .jar-Datei (liegt z. B. auf dem Desktop) im Autostart-Ordner erstellen? Allgemeine Java-Themen 20
E java mithilfe url .jar datei öffnen Allgemeine Java-Themen 9

Ähnliche Java Themen


Oben