Уникальный идентификатор файла между Windows Explorer и Google Drive.C#

Место общения программистов C#
Ответить
Anonymous
 Уникальный идентификатор файла между Windows Explorer и Google Drive.

Сообщение Anonymous »

С помощью метода, аналогичного тому, который я привел ниже, я обновляю атрибут «имя» файлов в папке, используя его атрибут «Id». Задача выполняется без проблем.
В этом случае файлы находятся в указанной папке, и для них не требуется указывать какой-либо атрибут.
Сейчас выполняется процесс, посредством которого необходимо указать имя файла (методом, который я указал ниже). Проблема в том, что имя локального файла в Проводнике Windows получается не со всеми реальными символами Google Диска. В Windows существуют ограничения на именование файлов, которых нет на Google Диске. В этой среде могут даже повторяться имена файлов, поскольку ссылочным и неизменяемым атрибутом является «Id».
Я беру имена файлов непосредственно из файлов, выбранных в проводнике Windows, но поскольку значение не всегда соответствует реальному значению на Google Диске. Я должен исключить использование этого атрибута для поиска файлов.
И вот в чем вопрос. Мне нужно будет использовать атрибут файла в Проводнике Windows, который также существует на Google Диске для того же файла. То есть что-то вроде UUID. Таким образом, значение, которое будет передано методу, выполняющему операцию, будет «UUID» каждого файла, а идентификация будет уникальной.
Может ли кто-нибудь помочь мне найти это предполагаемое "UUID"?
Примечания:
  • Обратите внимание, что я использую синхронизацию с Google Диском, чтобы удаленные папки и файлы обычным образом отображаются в проводнике Windows на корневом диске, содержащем все содержимое диска моей учетной записи.
  • В цикле foreach наличие более одного файла в настоящее время не учитывается.< /p>
    public async Task CambioNombreFicheroSeleccionados(DriveService ds, ArrayList al)
    {
    try
    {
    string r = "";
    Еогеасп (вар элемент в аль)
    {
    r = r + "name = '" + элемент + "'";

    Код: Выделить всё

         if (r.Length == 0) { return; };
    
    string cadQ =  r + " and trashed = false";
    
    var drivefiles = GDrive_baj.ListFiles(ds, new GDrive_baj.FilesListOptionalParms { Q = cadQ });
    
    foreach (var driveFile in drivefiles.Files)
    {
    var fileMetadata = new Google.Apis.Drive.v3.Data.File()
    {
    Name = Cg.ReemplazarCaracteresEspeciales(driveFile.Name)
    };
    
    var request2 = ds.Files.Update(fileMetadata, hhh);
    var results = await request2.ExecuteAsync();
    }
    return;
    }
    catch (Exception ex)
    {
    string ss = ex.Message;
    }
    return;
    


Подробнее здесь: https://stackoverflow.com/questions/791 ... ogle-drive
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»