반응형
유니티 C# AWS S3 파일 다운로드 받는 방법 예시 코드 작성
using System.Collections;
using UnityEngine;
using UnityEngine.Networking;
using System.IO;
public class S3FileDownloader : MonoBehaviour
{
// S3에서 다운로드할 파일의 URL
private string fileUrl = "https://your-bucket-name.s3.region.amazonaws.com/your-file-name";
// 파일을 저장할 로컬 경로
private string localFilePath;
void Start()
{
// 로컬 파일 경로 설정
localFilePath = Path.Combine(Application.persistentDataPath, "downloadedFile.ext");
// 파일 다운로드 시작
StartCoroutine(DownloadFile(fileUrl, localFilePath));
}
IEnumerator DownloadFile(string url, string filePath)
{
UnityWebRequest request = UnityWebRequest.Get(url);
yield return request.SendWebRequest();
if (request.result == UnityWebRequest.Result.ConnectionError || request.result == UnityWebRequest.Result.ProtocolError)
{
Debug.LogError("File download error: " + request.error);
}
else
{
// 다운로드된 파일을 로컬에 저장
File.WriteAllBytes(filePath, request.downloadHandler.data);
Debug.Log("File downloaded to: " + filePath);
// 다운로드한 파일을 로드하거나 실행하는 로직
ExecuteFile(filePath);
}
}
// 예시로 다운로드한 텍스트 파일을 실행하는 로직 (필요에 따라 수정)
void ExecuteFile(string filePath)
{
if (File.Exists(filePath))
{
string fileContent = File.ReadAllText(filePath);
Debug.Log("Downloaded File Content: " + fileContent);
}
else
{
Debug.LogError("File not found: " + filePath);
}
}
}
반응형