|
| pathSeparator på unix og windows Fra : Anders Hansen |
Dato : 11-03-02 18:22 |
|
Hejsa, jeg har et lille problem med denne pathSeperator.
Jeg sender filer fra en windows maskine til en ukendt maskine (unix eller
andet der kan køre java), derudover sender jeg også en streng med en
fil-sti, da filen skal ligge på modtager-maskinen i en tilsvarende struktur.
Hvordan håndtere jeg nu at få konverteret stien: "export\bib1\test.txt" til
unix fx. "export/bib1/test.txt"?
jeg kan jo ikke bare erstatte '\' med '/' da jeg ikke ved hvilken der er
gældende på den aktuelle maskine?
MVH/Anders
| |
Filip Larsen (11-03-2002)
| Kommentar Fra : Filip Larsen |
Dato : 11-03-02 18:41 |
|
Anders Hansen skrev
> Hejsa, jeg har et lille problem med denne pathSeperator.
Bemærk, at system property "file.separator" normalt er sat til den lokale
separator.
Mvh,
--
Filip Larsen <filip.larsen@mail.dk>
| |
Anders Hansen (11-03-2002)
| Kommentar Fra : Anders Hansen |
Dato : 11-03-02 18:42 |
|
ja og det er jo mit problem....
Jeg tror jeg bliver nød til at opdele stien inden jeg sender den afsted...
Tak alligevel
/Anders
"Filip Larsen" <filip.larsen@mail.dk> skrev i en meddelelse
news:PY5j8.3558$RB.122655@news010.worldonline.dk...
> Anders Hansen skrev
>
> > Hejsa, jeg har et lille problem med denne pathSeperator.
>
> Bemærk, at system property "file.separator" normalt er sat til den lokale
> separator.
>
>
> Mvh,
> --
> Filip Larsen <filip.larsen@mail.dk>
>
>
| |
Rasmus Bang Grouleff (11-03-2002)
| Kommentar Fra : Rasmus Bang Grouleff |
Dato : 11-03-02 18:43 |
|
Anders Hansen wrote:
> Hvordan håndtere jeg nu at få konverteret stien: "export\bib1\test.txt"
til
> unix fx. "export/bib1/test.txt"?
> jeg kan jo ikke bare erstatte '\' med '/' da jeg ikke ved hvilken der er
> gældende på den aktuelle maskine?
Kunne det tænkes, at du laver en smule kode, der ved hvilken platform det
kører på. Den tager den tekststreng som argument, og konverterer det til en
gyldig sti? Så afsenderen kan være ligeglad med hvilken platform den sender
til.
MVH
Rasmus B. Grouleff
| |
Anders Hansen (11-03-2002)
| Kommentar Fra : Anders Hansen |
Dato : 11-03-02 19:15 |
|
Ja det bliver nok sådan jeg løser det... jeg sender et array med, hvor hvert
underbibliotek er et element! Så kan modtager klippe dem sammen... det
virker bare lidt klodset!
MVH/Anders
"Rasmus Bang Grouleff" <rb_grouleff@runbox.com> skrev i en meddelelse
news:a6iqam$pc6$1@sunsite.dk...
> Anders Hansen wrote:
>
> > Hvordan håndtere jeg nu at få konverteret stien: "export\bib1\test.txt"
> til
> > unix fx. "export/bib1/test.txt"?
> > jeg kan jo ikke bare erstatte '\' med '/' da jeg ikke ved hvilken der er
> > gældende på den aktuelle maskine?
>
> Kunne det tænkes, at du laver en smule kode, der ved hvilken platform det
> kører på. Den tager den tekststreng som argument, og konverterer det til
en
> gyldig sti? Så afsenderen kan være ligeglad med hvilken platform den
sender
> til.
>
> MVH
> Rasmus B. Grouleff
>
>
| |
The MaXx (11-03-2002)
| Kommentar Fra : The MaXx |
Dato : 11-03-02 19:32 |
|
> Ja det bliver nok sådan jeg løser det... jeg sender et array med, hvor
hvert
> underbibliotek er et element! Så kan modtager klippe dem sammen... det
> virker bare lidt klodset!
Eller også sender du det bare som windows-stien (eller som unix'en. Bare ens
hver gang) og så kører modtageren en funktion som ligner dette:
public String toLocalPath(String s)
{
s.replace('\', System.getProperty("file.separator").charAt(0));
return s;
}
The MaXx
PS.: Koden er fri fra hukommelse og ikke testet
| |
Anders Hansen (11-03-2002)
| Kommentar Fra : Anders Hansen |
Dato : 11-03-02 19:40 |
|
ja, men jeg ved jo ikke at det er '\' jeg skal erstatte... (det gælder jo
kun i windows -tror jeg)
MVH/Anders
"The MaXx" <the_maxx80@hotmail.com> skrev i en meddelelse
news:3c8cf816$0$37689$edfadb0f@dspool01.news.tele.dk...
> > Ja det bliver nok sådan jeg løser det... jeg sender et array med, hvor
> hvert
> > underbibliotek er et element! Så kan modtager klippe dem sammen... det
> > virker bare lidt klodset!
>
> Eller også sender du det bare som windows-stien (eller som unix'en. Bare
ens
> hver gang) og så kører modtageren en funktion som ligner dette:
>
> public String toLocalPath(String s)
> {
> s.replace('\', System.getProperty("file.separator").charAt(0));
> return s;
> }
>
> The MaXx
>
> PS.: Koden er fri fra hukommelse og ikke testet
>
>
| |
Rasmus Bang Grouleff (11-03-2002)
| Kommentar Fra : Rasmus Bang Grouleff |
Dato : 11-03-02 19:55 |
|
Anders Hansen wrote:
> ja, men jeg ved jo ikke at det er '\' jeg skal erstatte... (det gælder jo
> kun i windows -tror jeg)
Du skal bare sørge for, at det altid er '\' der er pathseperator i den
streng du sender med, så skulle det ikke være noget problem.
MVH
Rasmus Bang Grouleff
| |
The MaXx (11-03-2002)
| Kommentar Fra : The MaXx |
Dato : 11-03-02 19:59 |
|
> ja, men jeg ved jo ikke at det er '\' jeg skal erstatte... (det gælder jo
> kun i windows -tror jeg)
Ja, men da du sender det som en streng, ved du præcis hvad du skal erstatte,
så kører modtager computeren bare den funktion jeg skrev, før den bruger
stien.
The MaXx
| |
Filip Larsen (11-03-2002)
| Kommentar Fra : Filip Larsen |
Dato : 11-03-02 22:08 |
|
The MaXx skrev
> public String toLocalPath(String s)
> {
> s.replace('\', System.getProperty("file.separator").charAt(0));
> return s;
> }
>
> PS.: Koden er fri fra hukommelse og ikke testet
Ok, men for en god ordens skyld skal det lige nævnes, at String.replace
returnerer den nye streng. Ovenstående skal altså være "return
s.replace(...".
Mvh,
--
Filip Larsen <filip.larsen@mail.dk>
| |
The MaXx (11-03-2002)
| Kommentar Fra : The MaXx |
Dato : 11-03-02 22:23 |
|
> > public String toLocalPath(String s)
> > {
> > s.replace('\', System.getProperty("file.separator").charAt(0));
> > return s;
> > }
> Ok, men for en god ordens skyld skal det lige nævnes, at String.replace
> returnerer den nye streng. Ovenstående skal altså være "return
> s.replace(...".
Selvfølgelig.... sådan kan det gå med kode lige ud af hovedet.
The MaXx
| |
Flemming Jensen (11-03-2002)
| Kommentar Fra : Flemming Jensen |
Dato : 11-03-02 22:35 |
|
On Mon, 11 Mar 2002 18:22:08 +0100, in dk.edb.programmering.java you
wrote:
>Hejsa, jeg har et lille problem med denne pathSeperator.
>Jeg sender filer fra en windows maskine til en ukendt maskine (unix eller
>andet der kan køre java), derudover sender jeg også en streng med en
>fil-sti, da filen skal ligge på modtager-maskinen i en tilsvarende struktur.
Du behøver i virkeligheden ikke gøre noget som helst. Jeg bruger altid
'/' uanset hvilken platform Java afvikles på. JVM'en konverterer selv
efter behov, og det er dermed transparent. Jeg foretrækker at bruge
'/' over hele linien, da man ved '\' ofte glemmer "\\" i forbindelse
med tekststrengsliteraler.
I praksis har du kun behov for pathSeperator hvis du skal bruge
stien i anden sammenhæng - f.eks. vise den til brugeren.
/Flemming Jensen
| |
|
|