c#
google api사용해서 google drive에 폴더만들기
hjh1023
2022. 10. 19. 18:45
반응형
// service account 계정만들고 다운받은 json파일 경로
private const string PathToServiceAccountKeyFile = @"C:\Users\\Desktop\mygoogleapi.json";
// upload할 파일경로 + 이름
private const string UploadFileName = @"C:\Users\Desktop\aaa.txt";
//구글드라이브의 폴더주소
private const string DirectoryId = "1QM.......";
▲ service account 계정 어떻게 만들지 모르겠으면 google drive에 업로드하기 -1 보기!!!
구글드라이브 폴더주소 알아보는 법은 2편에 있음.
public static string DriveCreateFolder()
{
var credential = GoogleCredential.FromFile(PathToServiceAccountKeyFile)
.CreateScoped(DriveService.Scope.Drive);
// Create Drive API service.
var service = new DriveService(new BaseClientService.Initializer
{
HttpClientInitializer = credential,
//ApplicationName = "Drive API Snippets"
});
// File metadata
var fileMetadata = new Google.Apis.Drive.v3.Data.File()
{
Name = "Invoices", //만들 폴더명
Parents = new List<String>() { DirectoryId },
MimeType = "application/vnd.google-apps.folder"
};
// Create a new folder on drive.
var request = service.Files.Create(fileMetadata);
request.Fields = "id";
var file = request.Execute();
// Prints the created folder id.
//MessageBox.Show("folder id" + file.Id);
return file.Id;
}
이렇게 폴더 만들기 함수를 생성해 준다.
이런식으로 버튼을 만들고 버튼이벤트 함수에 이렇게 DriveCreateFolder함수를 실행시키면 된다.
이렇게 만들어지는데 이름이 중복이어도 그냥 만들어진다. 이 문제는 해결되면 따로 올려야겠다.
반응형