2013-11-21 6 views
0

Попытка написать довольно простую программу, которая читает строку за строкой файл с ftp-сервера, сохраняет каждую строку в строке, а затем записывает эту строку в локальный файл на моем диске. Теперь это довольно легко и отлично работает.Обновить копию текстового файла при обновлении оригинала

Это часть, которая становится сложной. Каждый раз, когда обновляется файл ORIGINAL на ftp (добавляется новая строка), я хочу, чтобы эта строка была добавлена ​​в мой ЛОКАЛЬНЫЙ файл, созданный ранее. Я НЕ хочу переписывать содержимое всего файла, если файлы разные. Я просто хочу добавить недостающие строки.

Можно ли это сделать? Любые советы будут оценены. Вам не нужно вводить код. Сообщите мне, как это можно сделать логически, и я попытаюсь написать для него код.

С уважением

+0

Что означает «копирует файл с ftp-сервера на локальный диск»? Вы имеете в виду «копии», как в «передачах через ftp», или вы имеете в виду «копии», как в «копии с диска C: на диск D:»? Ваш вопрос очень расплывчатый, и вам нужно уточнить, что вы просите. Пожалуйста, отредактируйте еще раз, чтобы сделать это, чтобы мы могли попробовать и помочь вам. Благодарю. –

+0

Он читает каждую строку в текстовом файле на ftp-сервере и записывает каждую строку в локальном текстовом файле (c: /). –

ответ

0

Вы не можете прочитать файл «построчно» от FTP-сервера с помощью самого FTP.

FTP не подходит для File Transfer Protocol, что предназначено для передачи файлам. Нет никакого способа сделать что-либо еще через этот протокол. Если вы хотите получить доступ к нему «по очереди», вам придется использовать что-то другое, кроме FTP.

+0

Хорошо. Я понимаю, что весь мой вопрос запутан. Давайте проигнорируем это на FTP-сервере на секунду. Предположим, у меня две идентичные копии файла. Скопируйте 1 и Скопируйте 2. Теперь каждый раз, когда Copy 1 получает новую строку, добавленную в конце, я хочу, чтобы эта строка также была добавлена ​​в Copy 2. Каждые 10 секунд моя программа проверяет, идентичны ли копии 1 и Copy 2. Если да, ничего не делайте. В противном случае программа копирует MISSING LINES (в конце копии 1) в Copy 2. Возможно ли это, если вы не должны повторно создавать содержимое Copy 2 с нуля? –

+0

Конечно, если вы готовы одновременно открывать 'Copy1' и' Copy2' (что невозможно через FTP). Вы можете попросить Windows уведомить вас, когда изменился файл локального или сетевого диска, открыть оба файла, сравнить количество строк, а затем добавить строки, не находящиеся в 'Copy1', в' Copy2'. Оба файла должны быть доступны в полном объеме, хотя для сравнения контента. Но вы * не можете * игнорировать факт, что это через FTP, так как этот вопрос вы задали здесь. Если у вас есть * другой вопрос *, вам нужно опубликовать новый, * другой * вопрос. –

Смежные вопросы