Unity Standalone File Browser,Unity打开文件选择器

Unity Standalone File Browser,Unity打开文件选择器

CSDN下载

可以留言私发下载
https://download.csdn.net/download/GoodCooking/89124226

下载地址:GitHub链接:

https://github.com/gkngkc/UnityStandaloneFileBrowser

简单的示例代码

using SFB;
using System;
using System.IO;
using UnityEngine;
using UnityEngine.UI;

public class NewBehaviourScript : MonoBehaviour
{
   /// <summary>
   /// 用于显示图片的image
   /// </summary>
   public Image myimage;

   /// <summary>
   /// 图片选择按钮
   /// </summary>
   public Button btnSelect;

   /// <summary>
   /// 图片读取按钮
   /// </summary>
   public Button btnRead;

   private void Start()
   {
       btnSelect.onClick.AddListener(OnSelectImageButtonClicked);
       btnRead.onClick.AddListener(LoadAndDisplayBase64Image);
   }

   public void OnSelectImageButtonClicked()
   {

       //        // Open file with filter
       //        var extensions = new[] {
       //    new ExtensionFilter("Image Files", "png", "jpg", "jpeg" ),
       //    new ExtensionFilter("Sound Files", "mp3", "wav" ),
       //    new ExtensionFilter("All Files", "*" ),
       //};


       // Open file with filter
       var extensions = new[] {
   new ExtensionFilter("Image Files", "png", "jpg", "jpeg" )};


       string[] paths = StandaloneFileBrowser.OpenFilePanel("Select Image", "", extensions, false);

       if (paths.Length > 0)
       {
           string imagePath = paths[0];
           byte[] imageData = File.ReadAllBytes(imagePath);

           // 将图像数据转换为Base64字符串
           string base64ImageString = Convert.ToBase64String(imageData);

           // 将Base64字符串写入文本文件
           File.WriteAllText(Application.streamingAssetsPath + "/image_data.txt", base64ImageString);
       }
   }

   public void LoadAndDisplayBase64Image()
   {
       if (File.Exists(Application.streamingAssetsPath + "/image_data.txt"))
       {
           // 从文件读取Base64字符串
           string base64ImageString = File.ReadAllText(Application.streamingAssetsPath + "/image_data.txt");

           // 将Base64字符串解码回字节数组
           byte[] imageData = Convert.FromBase64String(base64ImageString);

           // 创建Texture2D并加载图像数据
           Texture2D texture = new Texture2D(100, 100);
           texture.LoadImage(imageData);

           // 将Texture2D转换为Sprite并设置到Image组件上
           myimage.sprite = CreateSpriteFromTexture(texture);
       }
   }

   private Sprite CreateSpriteFromTexture(Texture2D texture)
   {
       Rect rect = new Rect(0, 0, texture.width, texture.height);
       Vector2 pivot = new Vector2(0.5f, 0.5f);
       return Sprite.Create(texture, rect, pivot);
   }
}

场景布局
在这里插入图片描述

代码解析:
引用命名空间: using SFB;
两个按钮实现功能,一个image用于显示图片

        // Open file with filter
        var extensions = new[] {
    new ExtensionFilter("Image Files", "png", "jpg", "jpeg" )};

添加过滤条件,效果如下图,在右下角
在这里插入图片描述

多条件过滤,

        // Open file with filter
        var extensions = new[] {
            new ExtensionFilter("Image Files", "png", "jpg", "jpeg" ),
            new ExtensionFilter("Sound Files", "mp3", "wav" ),
            new ExtensionFilter("All Files", "*" ),
        };

效果在右下角
在这里插入图片描述

选择完毕之后,点击读取按钮会读取上面写如的base64文件,将图片显示到场景中

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Unity FileBrowserUnity引擎中的一个文件浏览器插件,可以用于浏览、选择和操作文件。 Unity FileBrowser可以帮助开发者在Unity项目中直接浏览文件系统,包括浏览文件夹、查看文件列表和文件详情。它提供了直观的用户界面,使开发者可以轻松地管理和操作文件。 使用Unity FileBrowser,开发者可以选择打开或保存文件,从而实现与文件系统的交互。例如,开发者可以选择加载游戏资源或保存游戏数据。这对于游戏开发者来说非常重要,因为他们可以直接从文件系统中选择并加载所需的资源。 另外,Unity FileBrowser还允许开发者进行一些文件操作,例如创建文件夹、复制、剪切和重命名文件等。这为开发者提供了方便,使他们可以在Unity中直接进行一些文件管理操作,而不需要离开Unity环境。 总之,Unity FileBrowserUnity引擎中的一个文件浏览器插件,可以帮助开发者在Unity项目中进行文件浏览、选择和操作。它提供了直观的用户界面,使开发者可以方便地管理和操作文件,从而增强了游戏开发的效率和便利性。 ### 回答2: UnityFileBrowser是一个用于在游戏中浏览和选择文件的工具。它提供了一个用户友好的界面,允许玩家浏览文件夹,查看文件列表,并选择他们想要的文件。 使用UnityFileBrowser,可以轻松地将文件的路径传递给其他模块,例如读取或写入文件的代码。这使得在游戏中加载自定义资源,如图片、音效或关卡文件等变得非常方便。 FileBrowser还允许玩家创建新的文件夹,删除已有的文件夹或文件,以及重命名它们。这为玩家提供了更多管理文件和文件夹的权限。 此外,UnityFileBrowser还支持各种文件类型,如图片、音频、视频和文本文件等。这使得玩家可以在游戏中轻松地浏览和选择各种类型的文件。 FileBrowser提供了丰富的自定义选项,开发者可以根据自己的需求调整其外观和功能。这使得它适用于各种类型的游戏和项目。 总之,UnityFileBrowser是一个强大且简便的工具,可用于在游戏中浏览和选择文件。它提供了用户友好的界面和丰富的自定义选项,使开发者能够更轻松地管理和加载各种类型的文件。 ### 回答3: Unity文件浏览器是一个用于在Unity引擎中浏览和管理文件的工具。它提供了一个用户友好的界面,使得开发者能够方便地在项目中浏览和查找文件。 Unity文件浏览器具有以下主要功能: 1. 浏览文件夹:Unity文件浏览器允许用户在项目中浏览文件夹,并查看其中的文件和子文件夹。这使得开发者能够快速定位所需的文件和资源。 2. 文件预览:该工具还提供了文件预览功能,使开发者能够在浏览器中预览不同类型的文件,如图片、音频和视频文件。这使得开发者能够更好地了解文件的内容,而无需打开对应的编辑器。 3. 文件过滤:用户可以根据特定的文件类型或扩展名来过滤显示的文件。这可以帮助开发者快速查找某一类文件,提高开发效率。 4. 文件操作:Unity文件浏览器还支持基本的文件操作,如复制、移动、重命名和删除文件。这使得开发者能够在浏览器中直接对文件进行管理,而无需离开Unity编辑器。 总之,Unity文件浏览器是一个强大且易于使用的工具,可以帮助开发者在Unity项目中轻松查找、浏览和管理文件。它提供了方便的功能,如文件预览和过滤,使得开发者能够更加高效地进行开发工作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值