Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Filename konvencija u C-u...

[es] :: C/C++ programiranje :: C/C++ za početnike :: Filename konvencija u C-u...

[ Pregleda: 2465 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Rapaic Rajko
Bgd

Član broj: 4105
Poruke: 810
*.e-info.ba.



+62 Profil

icon Filename konvencija u C-u...12.10.2017. u 13:11 - pre 78 meseci
Postovani,

imam pitanje: kako u C-u glasi full pathname na fajl koji se nalazi na drugoj masini?
Buni me double_slash. Ako je naziv nekog fajla u Delphi-ju '\\AnyComp\AnyPubDir\AnyFile.txt', kako bi to isto bilo u C konvenciji?
Imam neki kod koji konvertuje string za OleVariant parametar, i dobije se "\\\\AnyComp\\AnyPubDir\\AnyFile.txt"; naravno s ovim poziv funkcije ne odradi nista, odnosno dobijem poruku da nije validno ima fajla.
Hvala unapred!

Pozz
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
c-bg-d-p6-39.bvcom.net.



+1064 Profil

icon Re: Filename konvencija u C-u...12.10.2017. u 13:27 - pre 78 meseci
Zavisi od f-je, medjutim \ je escape karakter.
Ako hoces u C-u da proizvedes taj string onda:
'\\\\AnyComp\\AnyPubDir\\AnyFile.txt'
Znaci sve po dva \\
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4901
89.216.51.*

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: Filename konvencija u C-u...12.10.2017. u 13:44 - pre 78 meseci
Ne znam kako si dobio duple backslashove za pristup? Sigurno ti taj kod za konverziju nije dobar, ili je kod za neku drugu namenu. Zapravo, šta će uopšte kod za konverziju? Prosto, pre pristupa fajlu testiraj sa nekim ShowMessage() kako string izgleda pre pristupa. Treba da izgleda "normalno", sa jednim backslashom.



Dodatni problem može biti pristup drugim operativnim sistemima, kada se umesto backslasheva koriste obični slashevi, izuzev putanuje računara.







 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
c-bg-d-p6-39.bvcom.net.



+1064 Profil

icon Re: Filename konvencija u C-u...12.10.2017. u 14:02 - pre 78 meseci
Pitanje je koju f-ju koristi. Cisto sumnjam da fopen moze da prepoznaje da je mreza u pitanju i da radi sa mrezom. Znaci path mora biti validan u lokalu. Na Unixu je to prosto obican path sa slashevima. Ne znam za Windows kako mountuje remote file system i koja je konvencija za path
ali znam sigurno da to fopen ne moze.
 
Odgovor na temu

Burgos
Nemanja Borić
Amazon Web Services
Berlin

Član broj: 12484
Poruke: 1947
*.dip0.t-ipconnect.de.

Sajt: stackoverflow.com/users/1..


+480 Profil

icon Re: Filename konvencija u C-u...12.10.2017. u 14:07 - pre 78 meseci
`fopen` radi sa UNC (putanje koje počinju sa \\):

Citat:

fopen accepts paths that are valid on the file system at the point of execution; fopen accepts UNC paths and paths that involve mapped network drives as long as the system that executes the code has access to the share or mapped drive at the time of execution



http://msdn.microsoft.com/en-us/library/yeby3zcb.aspx
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
c-bg-d-p6-39.bvcom.net.



+1064 Profil

icon Re: Filename konvencija u C-u...12.10.2017. u 14:13 - pre 78 meseci
To je nesto mikrosoft specificno. Dakle problem je verovatno sto Windows ne vidi share jer path je onda validan.

edit: ali on nije rekao ni koji OS ni koja f-ja ;)

[Ovu poruku je menjao Branimir Maksimovic dana 12.10.2017. u 15:33 GMT+1]
 
Odgovor na temu

Burgos
Nemanja Borić
Amazon Web Services
Berlin

Član broj: 12484
Poruke: 1947
*.dip0.t-ipconnect.de.

Sajt: stackoverflow.com/users/1..


+480 Profil

icon Re: Filename konvencija u C-u...12.10.2017. u 14:38 - pre 78 meseci
Da, pretpostavio sam za OS čim sam video putanju i OLE (a i Delphi). Ali u pravu si za fju ;-)
 
Odgovor na temu

Rapaic Rajko
Bgd

Član broj: 4105
Poruke: 810
134.90.128.*



+62 Profil

icon Re: Filename konvencija u C-u...14.10.2017. u 22:56 - pre 78 meseci
Kolege, hvala na odgovorima!

Duzan sam da pojasnim o cemu se radilo; u medjuvremenu sam resio problem.

Dakle, u pitanju su pozivi WordDocument funkcija, kao sto je WordDocument.Content.Fields.Add() i WordDocument.SaveAs().

1) WordDocument.Content.Fields.Add() ima treci parametar OleVariant koji sadrzi naziv fajla koji se dodaje/merge-uje. Dakle, ako je naziv ovako nesto "\\\\AnyComp\\AnyDir\\AnyFile" (bez ekstenzije, ali je podrazumevano .doc) funkcija nece raditi. Ali hoce u ovom slucaju "//AnyComp/AnyDir/AnyFile". Zato sam pitao za C konvenciju, i na kraju pribegao drugom resenju, zameni '\' sa '/''.
2) WordDocument.SaveAs() nisam uspeo da nateram da radi za filename "\\\\AnyComp\\AnyDir\\AnyFile" kao ni za "//AnyComp/AnyDir/AnyFile", i to i sa i bez ekstenzije. Sta sam onda uradio? Prekopirao sam fizicki postojeci/stari .doc fajl (CopyFile) pod novim imenom, zatim otvorio sa OpenDocument i dalje ga merge-ovao kao pod 1).

Kao sto se vidi, M$ i dalje zagorcava zivot nama programerima. Verujte mi da sam pokusao da pronadjem detaljnu dokumentaciju: google je izbacio par desetina linkova samo iz msdn-a, i ni jedan nema diskusiju parametara/argumenata za pomenute funkcije; ocekivano od M$. Resio sam problem tako sto sam ga zaobisao .

Jos jednom veliko hvala!

Pozz
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
c-bg-d-p6-39.bvcom.net.



+1064 Profil

icon Re: Filename konvencija u C-u...14.10.2017. u 23:01 - pre 78 meseci
Kad sam radio neki program za Windows pre jedno 10 godina razocarala me dokumentacija koja se moze naci na netu. Otkinuo sam se trazeci ono sto mi je trebalo.
 
Odgovor na temu

[es] :: C/C++ programiranje :: C/C++ za početnike :: Filename konvencija u C-u...

[ Pregleda: 2465 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.