file: //, aby wskazać plik względny do bieżącego katalogu

15

Używam file: // do wskazania pliku lokalnego.

file://localhost/Users/smcho/Desktop/softwaredevelop/15.pdf

Czy nie mogę użyć file: // do wskazania lokalnego pliku względem bieżącego katalogu? Mam na myśli bieżący katalog, w którym znajduje się plik zawierający plik: //.

file://./../15.pdf

Potrzebuję file: //, aby połączyć plik w Lwie . W Leo używam file: //, aby połączyć się z plikiem lokalnym i chcę wskazać pliki, które znajdują się w katalogu względnym do katalogu bieżącego. Podobne pytanie zadałem na forum Google .

prosseek
źródło

Odpowiedzi:

18
file://

jest dla absolutnych ścieżek. Ale następujące elementy będą względne w stosunku do katalogu roboczego:

file:./15.pdf
Robban
źródło
Niestety, nie działa to w OpenOffice: „Operacja na ../15.pdf została uruchomiona z niepoprawnym parametrem”
Michael
6

Nie znam oprogramowania do tworzenia konturów Leo, ale jeśli obsługuje on linki w taki sam sposób, jak przeglądarka internetowa, spróbuj wykonać następujące czynności

../15.pdf
file:../15.pdf

Notatki

  • Łącze względne zwykle nie obejmuje protokołu (takiego jak http:lub https:lub file:). Gdy protokół zostanie pominięty, przeglądarka internetowa użyje tego samego protokołu, co strona, na której pojawia się link.

  • Link bezwzględny zaczyna się od //. Łącze względne nie powinno zaczynać się //.

  • Jest ./to potrzebne tylko wtedy, gdy łączysz się dokładnie z folderem zawierającym stronę. W przeciwnym razie możesz to pominąć i zacząć od ../.

    ---- W swoim wątku w grupie edytorów Leo powiedziałeś, że file:./../15.pdfspowodował błąd. Być może ta ./../kombinacja wprowadza w błąd w oprogramowaniu. Może file:../15.pdfzadziała?

Bavi_H
źródło
Dzięki za odpowiedź, ale oba podejścia nie działają z Leo.
prosseek
2

W stosunku do czego? URI z definicji są bezwzględne. Możesz jednak ustawić swój identyfikator URI względem znanej lokalizacji, na przykład:

file://localhost/Users/smcho/Desktop/softwaredevelop/somedir/../15.pdf

Aktualizacja Z tego, co powiedziałeś, wygląda na to, że próbujesz otworzyć plik PDF z poziomu aplikacji. Zazwyczaj wykonuje się to po prostu przez uruchomienie pliku i umożliwienie systemowi operacyjnemu ustalenia, jak go obsłużyć. W Pythonie użyłbyś czegoś takiego:

os.startfile("../15.pdf")

Identyfikatory URI file://...są zwykle używane w kontekście aplikacji internetowych.

ciężki
źródło
1
Dziękuję za odpowiedź. Muszę wskazać plik względem bieżącego katalogu (w którym plik się znajduje). Czy plik: // może to zrobić?
prosseek
1
Bieżący katalog w jakim kontekście? Z jakiej aplikacji korzystasz? Czy to jest na jakiejś lokalnej stronie internetowej czy coś?
ciężki
1
jeśli odwołujesz się programowo do pliku: // NIE jest to na to sposób.
RobotHumans
Opracowałem pytanie. Bieżący katalog oznacza katalog, w którym znajduje się plik Leo.
prosseek
-1

MyClass.class.getResource ("/ com / fnf / si / DepAcctInq_V02.wsdl"); To zadziałało dla mnie

Bhabani
źródło
1
Witamy w superużytkowniku: chociaż może to, ale nie musi odpowiedzieć na pytanie, lepszym rozwiązaniem byłoby podanie wyjaśnienia, dlaczego twoje rozwiązanie działa ze szczegółami i łatwymi do naśladowania instrukcjami. Jeśli uważasz, że Twoja odpowiedź jest poprawna, zrób te rzeczy i ponownie je edytuj. Poświęć kilka minut i przeczytaj: - superuser.com/help. Odpowiadanie: superuser.com/help/how-to-answer , ponownie witamy u superuser.Thankyou
mic84