lange og korte filenames

, hvordan til at konvertere fuld filnavn stier.kort filenames omdannes til lange filnavn, længe filenames til kort filenames og hakke filenames.,, når et filnavn er faldet i en form eller en kommando linjen omfatter en,, filnavn os med kort filenames format (8.3). den vigtigste grund er, at en kort filnavn format, kan ikke omfatte en,, space charter.det virker godt siden space charter er, der anvendes som en fil skilletegn for.,,, følgende tre opgaver vil hjælpe du konvertere mellem, korte og lange filnavn.jeg tilføjede den hakke filnavn funktion, hjælp med en fuld filnavn, herunder den vej,.,,,, (===================================================}, funktion shortfilename (denne filnavn: string): string;,, (===================================================}, var, atmp: system [0..255] char,,,,,,, begynder, hvis ikke fileexists (filnavn), begynder, resultat: = ",,,,,,, begynder, hvis getshortpathname (pchar (filnavn), atmp, 7 (atmp) - 1) = 0, begynder, resultat: = filnavn,,,,, ellers begynder, resultat: = strpas (atmp);,,,,,,,,,,,, (==============================================}, funktion longfilename (shortname: string): string;,, (==============================================}, var,, sr: tsearchrec;,,, begynder, resultat: = '«, hvis (pos. (')), shortname) + producentorganisationer (» * «, shortname) +, producentorganisationer ("?, shortname) < > 0) eller ikke fileexists (shortname), begynder, {ignorere netbios navn, joker tegn og ugyldige filnavne}, udgang,,,,,,, mens findfirst (shortname, faanyfile, sr) = 0, begynder, {næste en del som præfiks), resultat: = ') + sr navn + resultat, sysutils. findclose (sr) (sysutils, ikke winprocs procedure.}, {adresseregister (skåret før ')'), shortname: = extractfiledir (shortname), hvis længde (shortname) < = 2, begynder, bryde; (shortname indeholder køre brev efterfulgt af ":"},,,,,,,, resultat: = extractfiledrive (shortname) + resultat;,,,,,,,,, (=========================================================}, funktion går (pathtomince: string. inspace: heltal): string;,, (=========================================================}, //"c: \\ program filer. delphi. ddrop. targetdemo. vigtigste. -",, //"c: \\ program filer.... ¶ vigtigste. pas", var,, sl: tstringlist;,, shelp, sfile: string;,, børsintroduktioner: heltal, begynder, shelp: = pathtomince;,, børsintroduktioner: = producentorganisationer ('), shelp),,,If iPos = 0 Then,, Begin,, Result := PathToMince;,, End,, Else,, Begin,, sl := TStringList.Create;,, //Decode string,, While iPos <> 0 Do,, Begin,, sl.Add(Copy(sHelp, 1, (iPos - 1)));,, sHelp := Copy(sHelp, (iPos + 1), Length(sHelp));,, iPos := Pos('\\', sHelp);,, End;,, If sHelp <> '' Then,, Begin,, sl.Add(sHelp);,, End;,, //Encode string,, sFile := sl[sl.Count - 1];,, sl.Delete(sl.Count - 1);,, Result := '';,, While (Length(Result + sFile) < InSpace) And (sl.Count <> 0) Do,, Begin,, Result := Result + sl[0] + '\\';,, sl.Delete(0);,, End;,, If sl.Count = 0 Then,, Begin,, Result := Result + sFile;,,ende, ellers begynder, resultat: = resultat +... ¶ + sfile,,,,,, sl fri;,,,,,,,,,,, konklusion:,, fungere som shortfilename, longfilename, og hakke er stor, hjælpere i en stråle miljø.,,



Previous:
Next Page: