Как прочитать файл с виндовой машины.

 
 
 
Сообщения:3
Помогите, пожалуйста, новичку :( . Программа работает под линуксом. Необходимо читать файл с виндовой машины. Как это реализовать? (Если подскажите еще, где можно почитать, будет просто замечательно).
 
 
Сообщения:3874
Немного не понятен вопрос: ваша программа запускается И под Линуксом И под виндой?
 
 
Сообщения:3
gesser, спасибо что откликнулись.
Ваши рекомендации на этом сайте многим помогли.
А ситуация такая: была программа, которая стояла на виндовом сервере, и парсила логи другого виндового сервера (обычный FileInputStream("\\server\log\1.log"). Теперь сделали сервер на линуксе и перенесли туда эту прогу. Поскольку она перестала работать - попросили переделать. Брать файл по ftp не хотят. Но я в Java разбираюсь слабо - может подскажите как это организовать можно. Чисто пару идей подкиньте :)... Будем сильно признательны
 
 
Сообщения:3874
Есть одна идея, но про тонкости реализации не скажу (не пробовал, а оттестить негде): Возможно стоит зашарить папку на виндовом сервере и стучаться туда по SMB с линуксовой машины. Думаю вам может понадобится http://jcifs.samba.org/.
 
 
Сообщения:3
Спасибо за совет. Вначале было тоже подозрение, что надо идти таким путем, но взяли сомнения. Теперь так и попытаюсь.
 
 
Сообщения:3874
Помоему я ошибся, вам наверное понадобится CIFS протокол из той же библиотеки :) Короче, для вас серавно будет это "прозрачно" (какой из протокола использовать - поидее выберет сама библиотека), думаю вам проcто нужно попытася обратится к виндовой шаре - \\workstation\share ..
 
 
Сообщения:1165
попробую предложить альтернативное решение:
если вы можете предварительно положить файл в директорию "по заказу" то можно использовать ClassLoader

 public static ClassLoader getClassLoader(Class currentClass) {
        ClassLoader contextClassLoader =
                Thread.currentThread().getContextClassLoader();

        if (contextClassLoader == null) {
            contextClassLoader = currentClass.getClassLoader();
        }

        return contextClassLoader;
    }

    public static URL getResource(String resourceName) {
        return getResource(resourceName, ClassLoaderUtils.class);
    }
    public static URL getResource(String resourceName, Class currentClass) {
        return getClassLoader(currentClass).getResource(resourceName);
    }

-------------------------
URL url = ClassLoaderUtils.getResource("com/pnx/underwrite/command/" + serviceId + ".xml");
    return url.getFile();


эл:
Спасибо за совет. Вначале было тоже подозрение, что надо идти таким путем, но взяли сомнения. Теперь так и попытаюсь.

The meaning of life, universe and everything is 42!
 
Модераторы:Нет
Сейчас эту тему просматривают:Нет