AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

string zerlegen/bearbeiten?

Ein Thema von Akut-Programming · begonnen am 22. Okt 2003 · letzter Beitrag vom 22. Okt 2003
Antwort Antwort
Akut-Programming

Registriert seit: 18. Aug 2003
648 Beiträge
 
#1

string zerlegen/bearbeiten?

  Alt 22. Okt 2003, 09:34
Hi!

Ich bekomme einen String von meiner Anwendung zurück, in dem Alle Laufwerke aneinander gereiht drin stehen. Jetzt würd ich diese gern trennen. D.h. Nach jeden Zeichen ein Leerzeichen bzw. ':\' Hatte schon gesucht, aber soganz geholfen hat mir nichts. Könnt mir da hier vielleicht jemand helfen?

Greetz,
Akut-Programming
be cool, be hot ... just be
  Mit Zitat antworten Zitat
Ghostwalker

Registriert seit: 16. Jun 2003
Ort: Schönwald
1.299 Beiträge
 
Delphi 10.3 Rio
 
#2

Re: string zerlegen/bearbeiten?

  Alt 22. Okt 2003, 10:04
Ok...das ich das richtig verstehen:

Du hast einen String "A:\B:\C:\D:\"

und möchtest "A:\ B:\ C:\ D:\" ?
Uwe
e=mc² or energy = milk * coffee²
  Mit Zitat antworten Zitat
Akut-Programming

Registriert seit: 18. Aug 2003
648 Beiträge
 
#3

Re: string zerlegen/bearbeiten?

  Alt 22. Okt 2003, 10:11
nein ich bekomm z.B. den String 'ABCDEFGXYZ'
und will 'A:\ B:\ C:\ D:\..' und dann noch jeden Buchstaben einzeln in ner beliebigen Variable!?
Akut-Programming
be cool, be hot ... just be
  Mit Zitat antworten Zitat
Tpercon

Registriert seit: 7. Jun 2002
638 Beiträge
 
Delphi 5 Professional
 
#4

Re: string zerlegen/bearbeiten?

  Alt 22. Okt 2003, 10:16
Zitat von Akut-Programming:
dann noch jeden Buchstaben einzeln in ner beliebigen Variable!?
Dafür bietet sich ja ein Array an.


Möchtest du jeden Buchstaben einzeln zum Laufwerk machen? Dann kannst du doch einfach in ner Schleife deinen String Zeichen für Zeichen durchgehen und diesen mit angehängtem :\ ins Array schreiben.
  Mit Zitat antworten Zitat
Ghostwalker

Registriert seit: 16. Jun 2003
Ort: Schönwald
1.299 Beiträge
 
Delphi 10.3 Rio
 
#5

Re: string zerlegen/bearbeiten?

  Alt 22. Okt 2003, 10:20
ok...die lösung:

Code:
function GenDriveList(AString:String):String;
const
   cTrenner = ':\ ';

var
  I : Integer; //ein zähler...
 max: Integer; //Länge des Quellstrings;

begin
  max := length(AString); //einmal feststellen reicht.
  result := '';
  for I := 1 to max do
    result := result+Astring[i]+cTrenner;
  result := trim(result); //überflüssiges Leerzeichen am ende löschen
end;
Uwe
e=mc² or energy = milk * coffee²
  Mit Zitat antworten Zitat
Akut-Programming

Registriert seit: 18. Aug 2003
648 Beiträge
 
#6

Re: string zerlegen/bearbeiten?

  Alt 22. Okt 2003, 10:20
Zitat von Tpercon:
Möchtest du jeden Buchstaben einzeln zum Laufwerk machen? Dann kannst du doch einfach in ner Schleife deinen String Zeichen für Zeichen durchgehen und diesen mit angehängtem :\ ins Array schreiben.
Hey, ja gute Idee - werd ich versuchen. Danke

[EDIT]
Danke Ghostwalker, werd ich mir auch angucken.
[/EDIT]
Akut-Programming
be cool, be hot ... just be
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: string zerlegen/bearbeiten?

  Alt 22. Okt 2003, 10:36
Moin Zusammen,

und ab geht's nach "Sonstiges"
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 Remote1
Remote1

Registriert seit: 22. Okt 2003
Ort: Dippoldiswalde
252 Beiträge
 
Delphi 6 Personal
 
#8

Re: string zerlegen/bearbeiten?

  Alt 22. Okt 2003, 10:47
schau dir mal das an:

Delphi-Quellcode:
procedure Laufwerke;
var Drives : array [1..255] of char;
    i : byte;
    Len : DWord;
begin
  //Alle Laufwerke ermitteln
  Len:=GetLogicalDriveStrings(255,@Drives);
  for i:=1 to Len-2 do
    if (i mod 4)=1 then form1.lwwahl.AddItem(copy(Drives,i,3),form1.lwwahl);
end;


die ganze sache hab ich dann auch noch son erweitert, dass nur Festplatten ausgegeben werden

Delphi-Quellcode:
function festplatten:TStringList;
var Drives : array [1..255] of char;
    LWListe: TStringList;
    i : byte;
    Len : DWord;
begin
  LWListe:=TStringList.Create;
  festplatten:=TStringList.Create;
  //Alle Laufwerke ermitteln
  Len:=GetLogicalDriveStrings(255,@Drives);
  for i:=1 to Len-2 do
    if (i mod 4)=1 then LWListe.Add(copy(Drives,i,3));
  //Alle Festplatten ermitteln
  for i:=0 to LWListe.Count-1 do
   begin
    if GetDriveType(pchar(LWListe.strings[i]))=DRIVE_FIXED then festplatten.Add(LWListe.Strings[i])

end;
end;
[edit=Christian Seehase]Delphi-Tags gesetzt. Bitte künftig selber machen. Danke. Mfg, Christian Seehase[/edit]
  Mit Zitat antworten Zitat
Tpercon

Registriert seit: 7. Jun 2002
638 Beiträge
 
Delphi 5 Professional
 
#9

Re: string zerlegen/bearbeiten?

  Alt 22. Okt 2003, 10:52
Nur so wie er oben schriebt, bekommt er ja den string und hat keinen Einfluß auf die Laufwerksuchenprocedure. Andernfalls ist der Weg im Prinzip natürlich gut.

@ Remote1: Wäre nett, wenn du die Delphi Code Tags benutzt. Damit läßt sich der Code leichter lesen.
  Mit Zitat antworten Zitat
Akut-Programming

Registriert seit: 18. Aug 2003
648 Beiträge
 
#10

Re: string zerlegen/bearbeiten?

  Alt 22. Okt 2003, 10:53
Cool danke Remote, probier ich aus.

Danke für eure Zahlreichen Tips!

Akut-Programming
be cool, be hot ... just be
  Mit Zitat antworten Zitat
Antwort Antwort


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 16:23 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz