AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

String ist zu lang für copy ?

Ein Thema von HomerGER · begonnen am 6. Dez 2003 · letzter Beitrag vom 7. Dez 2003
Antwort Antwort
Seite 1 von 2  1 2   
Benutzerbild von HomerGER
HomerGER

Registriert seit: 9. Jun 2003
390 Beiträge
 
Delphi 7 Professional
 
#1

String ist zu lang für copy ?

  Alt 6. Dez 2003, 22:45
hallo ihr
ich hab ne string in den können über 2000 Zeichen drin sein
leider schneidet mir copy wohl bei 255 den string ab
weiß jemand wie es anderes lösen kann?

das hier läuft durch ein for schleife
Code:
pos_i := Pos('<++>', daten_s);
daten_r.dat_aas[i][j] := Copy(daten_s, 1, pos_i - 1);
Delete(daten_s, 1, pos_i + 3);
wobei in daten_s über 2000 zeichen drin sind


Homer
  Mit Zitat antworten Zitat
Benutzerbild von Duffy
Duffy

Registriert seit: 19. Mär 2003
Ort: Wuppertal
835 Beiträge
 
Delphi 3 Standard
 
#2

Re: String ist zu lang für copy ?

  Alt 6. Dez 2003, 23:01
Hallo HomerGER,
am Copy wird es wohl nicht liegen. Siehe Beispiel.

bye
Claus
Angehängte Dateien
Dateityp: zip besispiel.zip (214,2 KB, 6x aufgerufen)
Künftige Generationen wollen ihre Fehler selber machen.
Jedes Programm wird nie das können, was Du wirklich brauchst.
Das Gegenteil von gut ist gut gemeint
-----
  Mit Zitat antworten Zitat
Benutzerbild von HomerGER
HomerGER

Registriert seit: 9. Jun 2003
390 Beiträge
 
Delphi 7 Professional
 
#3

Re: String ist zu lang für copy ?

  Alt 7. Dez 2003, 00:01
schön und wo bleibt dann mein rest
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#4

Re: String ist zu lang für copy ?

  Alt 7. Dez 2003, 00:04
ohne Angabe der Variablen-Deklaration wird man wohl nicht genau sagen können, woran das liegt.
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von Duffy
Duffy

Registriert seit: 19. Mär 2003
Ort: Wuppertal
835 Beiträge
 
Delphi 3 Standard
 
#5

Re: String ist zu lang für copy ?

  Alt 7. Dez 2003, 00:17
Hallo HomerGER,
so wie es Hansa sieht, sehe ich es auch.

bye
Claus

Möglichkeiten wären:
===============
Du verwendest Short Strings --> Dann wären die Strings <= 255
oder deine Strings sind limitiert ala String[255];
pos_i könnte Byte sein
Künftige Generationen wollen ihre Fehler selber machen.
Jedes Programm wird nie das können, was Du wirklich brauchst.
Das Gegenteil von gut ist gut gemeint
-----
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.262 Beiträge
 
Delphi 2006 Professional
 
#6

Re: String ist zu lang für copy ?

  Alt 7. Dez 2003, 01:49
Moin Homer,

oder die Position von <++> liegt bei 256.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von HomerGER
HomerGER

Registriert seit: 9. Jun 2003
390 Beiträge
 
Delphi 7 Professional
 
#7

Re: String ist zu lang für copy ?

  Alt 7. Dez 2003, 11:49
ok sorry

hier die Function

Code:
Function Werte_Zerlegen_GU(input_s : String; art_s : String; nr_i : Integer) : String;
var
daten_s : String;
daten_r : DatConstAry3Ary;
i : Integer;
j : Integer;
pos_i : Integer;
begin
    daten_s := input_s;

    //Array löschen
    for i := 1 to k_max_dat_i do
    begin
        for j := 1 to 3 do
        begin
            daten_r.dat_aas[i][j] := '';
        end;
    end;

    //Array füllen
    for i := 1 to k_max_dat_i do
    begin
        for j := 1 to 3 do
        begin
            if (daten_s <> '') then
            begin
                pos_i := Pos('<++>', daten_s);
                daten_r.dat_aas[i][j] := Copy(daten_s, 1, pos_i - 1);
                Delete(daten_s, 1, pos_i + 3);
            end;
        end;
    end;
end;

DatConstAry3Ary ist ne record
Code:
DatConstAry3Ary = Record
dat_aas : Array[1..k_max_dat_i] of Array[1..3] of String;
end;
in daten_s ist noch alles da
aber in daten_r.dat_aas nicht mehr
also dachte ich das copy nur max 255 zeichen copieren kann
  Mit Zitat antworten Zitat
Benutzerbild von HomerGER
HomerGER

Registriert seit: 9. Jun 2003
390 Beiträge
 
Delphi 7 Professional
 
#8

Re: String ist zu lang für copy ?

  Alt 7. Dez 2003, 11:58
sorry hab es noch mal geprüft
es kommt nicht alles an

die Daten werden aus einer ini datei ausgelesen

mit dieser Function
Code:
//Aus Ini Daten lesen
Function Ini_Lesen_IU(datei_s : String; section_s : String; key_s : String) : String;
var
Ini : TIniFile;
begin
    Ini :=TIniFile.Create(datei_s);
    try
        Result := Ini.ReadString(section_s, key_s, '');
    finally
        Ini.free;
    end;
end;
und hier fehlt dann die hälfte


Er überträgt 2047 Zeichen
  Mit Zitat antworten Zitat
CalganX

Registriert seit: 21. Jul 2002
Ort: Bonn
5.403 Beiträge
 
Turbo Delphi für Win32
 
#9

Re: String ist zu lang für copy ?

  Alt 7. Dez 2003, 12:04
Hi,
soweit ich weiß, werden bei TIniFile nur die ersten 255 Bytes ausgelesen.

Versuch es mal mit TBigIniFile.

Chris

[edit]Wenn 2047 Zeichen übertragen, werden, dann ist das Quatsch mit Soße, was ich gesagt habe.[/edit]
»Mein Kaffee ist so schwarz — der fängt gleich an zu rappen...«
  Mit Zitat antworten Zitat
Benutzerbild von HomerGER
HomerGER

Registriert seit: 9. Jun 2003
390 Beiträge
 
Delphi 7 Professional
 
#10

Re: String ist zu lang für copy ?

  Alt 7. Dez 2003, 12:22
thx für den tip mit big geht es
nur beim copilieren zeigt er warnungen und hinweise an

[Warnung] BigIni.pas(103): Eigenschaftsdeklaration verweist auf private-Vorfahr 'TBigIniFile.FSectionList'
[Hinweis] BigIni.pas(198): Variable 'IXRead' wurde deklariert, aber in 'TBigIniFile.SetFileName' nicht verwendet
[Hinweis] BigIni.pas(411): Variable 'oneLine' wurde deklariert, aber in 'TBigIniFile.ReadAll' nicht verwendet
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:28 Uhr.
Powered by vBulletin® Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2019 by Daniel R. Wolf