![]() |
Datei an bestimtmer Position öffnen
ist es möglich eine Datei erst an einer bestimmten Stelle zu öffnen sprich, wenn ich eine Textdate mit dem Inhalt ABCDEFG habe, diese mit einem externen Programm per ShellExecute öffne und diese dann aber nur den Inhalt DEFG anzeigt und somit an einer bestimmten Stelle geöffnet wird?
|
Re: Datei an bestimtmer Position öffnen
unter linux/unix gibt es da tools wie grep,egrep und awk
die könnten eine gewissen Teil einer Datei auslesen. An einer bestimmten Stelle öffnen, verstehe ich nicht. Der Lesezeiger ist nach dem Dateiöffnen am Anfang der Datei. Wenn Du so ein Tool programmieren willst, kannst Du die ganze Datei einlesen, oder die Daten auch zeilenweise und nur das ausgeben was Du für sinnvoll hälst. Bei Textdateien gibt es keine Sprungmarken, wie z.B. in Datensatz orientierten Datein. Es ist also nicht so ohne weiteres möglich an Postition x zu springen. Hoffe, habe Dich nicht ganz falsch verstanden. Grüße Klaus |
Re: Datei an bestimtmer Position öffnen
nein hast mich nicht falsch verstanden...
wie würde es aussehen, wenn man den Header der Datei um Bytes erweitern würde, die es dann nicht möglich machen würden die Datei zu öffnen da das Programm sagen würde es liegt ein ungültiges Format vor aber mit dem eigenen Programm sollen die zusätzlichen bytes im Header gar nicht gelesen und somit die datei problemlos geöffnet werden können.. ist das machbar und wenn ja wie könnte man das realisieren? |
Re: Datei an bestimtmer Position öffnen
Hi.
Um es einmal mit den Worten eines berüchtigten Wahl-Berliners auszudrücken: alles geht! Der Aufwand hängt stark davon ab, über welche I/O Funktionen bzw Komponenten auf die Datei zugegriffen wird. Am einfachsten ist es mit TFileStream - einfach die Zahl der zu überlesenden Bytes der Eigenschaft Position zuweisen. Grüße vom marabu |
Re: Datei an bestimtmer Position öffnen
würde es gerne mit einer audio-Datei machen, die dann mit der TMediaPlayer Komponente abgespeilt werden sollte.
|
Re: Datei an bestimtmer Position öffnen
Hoppla - deine Frage erweckte bei mir den Eindruck es handele sich um eine Textdatei. Audio-Dateien haben ein internes Format, eine Struktur. Hinzu kommt, dass die Komponente TMediaPlayer (nach flüchtiger Sichtkontrolle) kein Stream-Interface zur Verfügung stellt. Ein wenig eleganter aber funktionierender Ansatz wäre den custom header durch eine vorgelagerte Routine zu entfernen und die standard-konforme Datei temporär zu speichern um sie vom MediaPlayer öffnen zu lassen. Was hast du vor?
marabu |
Re: Datei an bestimtmer Position öffnen
danke marabu für deine Unterstützung
ich möchte auf irgend eine Weise das Kopieren und verwenden meiner Dateien ohne mein Programm verhindern.. meine anderen Threads (wie der gestrige zum Verhindern der Kopierfunktion in Windows) versuchen herauszufinden, ob es irgend einen Weg gibt, den ich nehmen könnte um mein Ziel zu erreichen und deshalb diskutiere ich verschiedene Ansätze. Wenn ich z.B. eine Mp3-Datei habe und diese eben mit einer anderen Datei per Join verbinde bekomme ich eine Datei die keiner öffnen kann (nunja es sei denn er weiss was er splitten muss) und somit ist diese datei auch unnütz zum Kopieren da er sie sowieso nicht benutzten kann, wenn er meine Hauptanwendung nicht hat... wenn ich jetzt die Datei OHNE zwischenspeicherungeinfach an einer bestimmten Stelle öffnen könnte wäre mein problem gelöst..wie gesagt wenn ich zwischenspeichere ist alles für die Katz weil man ja das entsplittete ergebnis problemlos kopieren kann :( |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:20 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz