2)dotnet mauiで新規のプロジェクト(ここではDropBoxCSVDownLorderとしました)を作り、Nugetで、DropBox.apiをインストールしておきます。そして以下のようなコードでアップします。
ここを手動ですると、失敗します。
using Dropbox.Api;
using Dropbox.Api.Files;
using System;
using System.Diagnostics;
using System.IO;
using System.Threading.Tasks;
//using Xamarin.Forms;
namespace DropBoxCSVDownLoder
{
public partial class MainPage : ContentPage
{
int count = 0;
public MainPage()
{
InitializeComponent();
Debug.WriteLine("MainPage constructor called.");
// GraphicsDrawableのインスタンスを作成してフィールドに設定
// 非同期処理をコンストラクタ内で直接呼び出さずに、初期化メソッドを呼び出す
// 非同期処理を別のメソッドで実行
InitializeAsync();
}
private async void InitializeAsync()
{
string accessToken = "XXXXXXXXXXXXXX"; // 取得したアクセストークンを設定
Debug.WriteLine("InitializeAsync called.");
string localFilePath = @"C:\Users\your\Desktop\appName\test.csv"; // ローカルファイルのパス (例: Windows)
string dropboxFilePath = "/Apps/CSVFileApp/test.csv"; // Dropbox内のファイルパス このフォルダの作り方は、別に掲載
try
{
using (var dbx = new DropboxClient(accessToken))
{
// ローカルファイルを読み込み
byte[] fileBytes = File.ReadAllBytes(localFilePath);
// Dropboxにファイルをアップロード
using (var mem = new MemoryStream(fileBytes))
{
var updated = await dbx.Files.UploadAsync(
dropboxFilePath,
WriteMode.Overwrite.Instance,
body: mem);
Debug.WriteLine($"File uploaded to Dropbox: {updated.Name}");
}
}
}
catch (Exception ex)
{
Debug.WriteLine($"Error uploading file: {ex.Message}");
} }
private void OnCounterClicked(object sender, EventArgs e)
{
略
}
}
}