精华内容
下载资源
问答
  • python中引用文件的方法

    千次阅读 2019-09-28 17:45:56
    在程序中引用文件无非是通过两种方式——绝对路径与相对路径,但是前者往往因为文件目录的改动而造成引用错误,因此我们大多采用相同路径的文件来引用文件。 例如,我们当前的目录结构是这样的 ---GUI ---test ...

    前言


    在程序中引用文件无非是通过两种方式——绝对路径与相对路径,但是前者往往因为文件目录的改动而造成引用错误,因此我们大多采用相同路径的文件来引用文件。

    例如,我们当前的目录结构是这样的

    ---GUI
        ---test
            ---demo.py
            ---file.json
        ---api.py

    在demo.py中有函数read_data()来读取file.json中的内容

    read_data(file_path):
        try:
            with open(file_path,mode='r',encoding='utf-8') as json_file:
                config=json.load(json_file)
                return config
            except FileNotFoundError as e:
                print(e)

    其中将file_path改为“./file.json”即可读取file.json中内容

    那么现在我们在api.py中调用demo.py发现会报如下错误:

    找不到file.json

    ????什么鬼?

    我们的文件路径经过开始的测试没有错误啊,为什么会出现这样的错误?

    解决方法


    事实上,我们的相对文件路径并没有错,当然这是建立在脚本程序和所读文件在相同的目录下,但是由于我们在其他目录下引用了相对路径,那么就会产生一个问题:python解释器在执行api.py时在api.py的父级目录下找不到file.json,因此便会报错,那么有什么方法可以让文件的路径始终保持唯一不变呢?请看下面

    import os
    current_path=os.path.dirname(__file__)
    read_data(file_path):
        full_path=current_path+file_path
        try:
            with open(full_path,mode='r',encoding='utf-8') as json_file:
                config=json.load(json_file)
                return config
            except FileNotFoundError as e:
                print(e)

    在其中我们对前面的代码进行了改动,加入了os.path.dirname(__file__)返回了该函数所在的脚本文件的路径,因而在其他模块中进行调用时便可直接找到该文件

    展开全文
  • HTML中相对路径的方式引用文件

    千次阅读 2019-05-23 19:09:20
    一、不同目录下文件引用 假设index.html与test.html位于不同文件下: <a href="../index.html">index.html</a> 这里的"…/“表示当前目录下的上一级目录,”…/…/"则表示当前目录下的上上级目录,...

    一、不同目录下文件的引用
    假设index.html与test.html位于不同文件下:

    <a href="../index.html">index.html</a>
    

    这里的"…/“表示当前目录下的上一级目录,”…/…/"则表示当前目录下的上上级目录,依次类推。
    假如index.html位于user文件夹下时,要从下级目录下链接到index.html页面,则应写成如下形式:

    <a href="../user/index.html>index.html</a>
    

    二、同一目录下的文件引用
    同样地,假设index.html与test.html位于相同文件下,可以直接写成:

    <a href="index.html>index.html</a>
    

    三、下级目录下的文件引用
    当文件test.html位于D:/WEB/test.html下,而index.html位于D:/WEB/admin/index,要在test.html中引用index文件,可写成如下形式:

    <a href="admin/index.html>index.html</a>
    

    在引用图片文件时也是一样的。

    展开全文
  • 文件引用路径__PUBLIC__/JS/bootstrap.js" type="text/javascript" charset="utf-8">script> src里面__PUBLIC__,很多人不知道怎么设置通过TMPL_PARSE_STRING配置文件路径 一配置直接原文件路径  'TMPL_PARSE_...

    文件引用路径<script src="__PUBLIC__/JS/bootstrap.js" type="text/javascript" charset="utf-8"></script>

    src里面__PUBLIC__,很多人不知道怎么设置通过TMPL_PARSE_STRING配置文件路径

    一配置直接原文件路径 

    'TMPL_PARSE_STRING'=>array( '__PUBLIC__'=>'/dome/dome/Modules/Index/Tpl/Public', ),这种不建议使用,如果改了分组名字什么的,后期不好维护推荐下面方法

    二配置路径含有分组等变量 

    'TMPL_PARSE_STRING'=>array( '__PUBLIC__'=>'/dome/' . APP_NAME . '/Modules/' . GROUP_NAME . '/Tpl/Public', ),

    当含有下图变量时,估计有人不知道什么意思,看文字也不好理解


    那么就是用下图变量输出办法写在html页面,输出显示,这样方便理解


    项目联系入口index.php文件配置

    define('APP_NAME','dome');


    例如下面html代码

    <div class="top">
    <p>{$Think.APP_NAME}</p>
    <p>{$Think.const.APP_NAME}</p>
    </div>

    页面显示结果

    dome

    dome

    使用{$Think......},输出变量,加强记忆
    展开全文
  • Unity文件文件引用、Meta详解

    千次阅读 2018-04-08 09:56:06
    三、序列化文件详解——Unity文件引用系统 上文已经提到,对于所有的序列化文件,Unity采用的是YAML来书写。所以对于一个Unity3d(场景)文件、prefab文件、材质、控制器等都可以用文本文档软件打开。这里还是用...

    原文链接:https://blog.uwa4d.com/archives/USparkle_inf_UnityEngine.html

    这是侑虎科技第381篇原创文章,感谢作者陈广忠供稿。欢迎转发分享,未经作者授权请勿转载。如果您有任何独到的见解或者发现也欢迎联系我们,一起探讨。(QQ群465082844)

    作者个人主页:https://codegize.cnblogs.com,同时,作者也是U Sparkle活动参与者哦,UWA欢迎更多开发朋友加入U Sparkle开发者计划,这个舞台有你更精彩!


    本文详细讲解了Unity引擎各种类型文件的信息内容、用法和使用场景,帮助研发团队对于引擎文件进行更好的理解和掌握。

    一、Unity项目中Assets目录下常见的文件类型

    在Unity3d中一般存在这么几种文件:

    • 资源文件
    • 代码文件
    • 序列化文件
    • 文本文档
    • 非序列化文件
    • Meta文件

    1、资源文件
    资源文件指一些创建好并且不再修改的文件。这样的文件一般是美术设计师和音频视频设计师创造的文件,比如FBX文件、贴图文件、音频文件、视频文件和动画文件(虽然动画文件可以被认为是配置文件,不过在由于一般不会去做修改,所以也认为是资源文件)。像这类文件,Unity中都会在导入时进行转化。每一个类型都对应一个AssetImporter,比如AudioImporter、TextureImporter、ModelImport等等。在Unity中点击这样的资源,在Inspector面板会出现设置界面,如下图所示是一个FBX的设置界面:

    请输入图片描述

    2、代码文件
    代码文件包括所有的代码文件、代码库文件、Shader文件等。在导入时,Unity会进行一次编译。

    3、序列化文件(数据文件)
    序列化文件通常是指Unity能够序列化的文件,一般是Unity自身的一些类型,比如Prefab(预制体)、Unity3d(场景)文件、Asset(ScriptableObject)文件、Mat文件(材质球),这些文件能够在运行时直接反序列化为对应类的一个实例。

    4、文本文档
    文本文档比较特殊,它不是序列化文件,但是Unity可以识别为TextAsset。很像资源文件,但是又不需要资源文件那样进行设置和转化,比如txt、xml文件等等。

    5、非序列化文件
    非序列文件是Unity无法识别的文件,比如一个文件夹也会被认为是一个文件,但是无法识别。

    请输入图片描述

    6、Meta文件
    Meta文件在Unity中的作用非常关键,它有2个作用:

    • 定义在它同目录下,同名的非Meta文件的唯一ID:GUID。而对于Unity的序列化文件来说,引用的对象用的就是这个GUID。所以一旦Meta中的GUID变更了,就要注意,它很可能引起一场引用丢失的灾难。

    • 存储资源文件的ImportSetting数据。在上文中资源文件是有ImportSetting数据的,这个数据正数存储在Meta文件中。ImportSetting中专门有存储Assetbundle相关的数据。这些数据帮助编辑器去搜集所有需要打包的文件并分门别类。所以每一次修改配置都会修改meta文件。


    二、Meta文件详解——Unity GUID/LocalID系统

    由于Meta文件的重要性,这里先说说Meta文件的数据结构。Meta文件实质上是一个文本文档,只是采用的是一种叫做YAML的格式来写的(见Description of the Format)。Unity中的序列化文件都是用这个格式类写的,比如Prefab、场景等(后文会继续)。

    我们使用Nodepad++打开一个Meta文件,然后在菜单中将语言设置为YAML,如下图所示:

    请输入图片描述
    这是一个Asset文件(ScriptableObject)的meta文件

    1、GUID
    Guid是Meta中最最最重要的数据。这个Guid代表了这个文件,无论这个文件是什么类型(甚至是文件夹)。换句话说,通过GUID就可以找到工程中的这个文件,无论它在项目的什么位置。在编辑器中使用AssetDatabase.GUIDToAssetPath和AssetDatabase.AssetPathToGUID进行互转。

    所以在每次svn提交时如果发现有Meta文件变更,一定要打开看一下。看看这个Guid是否被更改。理论上是不需要更改的。

    2、ImportSetting数据

    后面比较重要的数据是ImportSetting数据。根据不同的文件类型,它的数据是不同的ImportSetting数据,比如上面的NativeFormatImporter、ModelImporter、AudioImporter等等。只要对照Inspector面板中的条目,都可以看懂每一行的意义。

    所以知道这个之后,我们可以发现,假如我们把一个文件和这个文件的Meta文件从一个Unity工程复制到另一个Unity工程中,它的配置是不会变的(以前在2个工程手动裁剪同一个模型的20个动画真是傻到家了,直接将这个Fbx和它的Meta文件拷贝过去就行!)。

    3、FileID(LocalID)

    有一个问题是,如果是一个图集,下面有若干个图片,那么,这个GUID怎么对应一个文件呢?是的,对于一个文件下有多个文件的情况,就需要另外一个ID来表示,这就是LocalID。更习惯用Meta文件中的名字FileID。FileID存储方式有2种:

    对于资源文件,非序列化文件,由于一般不会去更改源文件,所以FileID存储在meta文件中。以下是一个Fbx文件的Meta文件:

    请输入图片描述
    请输入图片描述

    对于序列化文件,自身数据里面会存储自身的FileID,也会记录所有子文件的FileID(更多关于序列化文件的数据,见下文)。比如对于这样的AnimatorController。它本身的数据如下,除了本身的FileID为9100000外,记录了4个AnimatorClip的FileID。而meta文件中只有自身的FileID。

    请输入图片描述
    请输入图片描述 请输入图片描述

    回到本节一开始的问题,如果是图集,因为是图片本身是资源文件,所以会有FileID存储在对应的Meta文件中。打开任意一个图集,比如以下这个图集对应的Meta文件:

    请输入图片描述
    请输入图片描述

    至此就是整个Unity的GUID/LocalID系统的基础了。通过GUID找到任何一个文件,通过FileID找到其中的某个子文件。


    三、序列化文件详解——Unity文件引用系统

    上文已经提到,对于所有的序列化文件,Unity采用的是YAML来书写。所以对于一个Unity3d(场景)文件、prefab文件、材质、控制器等都可以用文本文档软件打开。这里还是用Notepad++打开。

    为了能够简洁地说明问题,我们在Unity中创建一个新的场景,然后创建2个Cube,一个做成Prefab。如图所示:

    请输入图片描述

    保存之后,用Notepad++打开这个1.Unity3d。然后在菜单中设置语言为YAML。

    请输入图片描述

    可以看到大概的数据:

    • OcclusionCullingSettings裁剪数据(菜单Window->Occlusion面板中的数据)
    • RenderSettings(菜单Window->Lighting->Settings面板中的部分数据)
    • LightmapSettings(菜单Window->Lighting->Settings面板中的其他部分数据)
    • NavMeshSettings(菜单Window->Navigation面板中的数据)
    • 之后就是场景中的物件的数据

    1、GameObject数据
    展开第一个GameObject数据,可以看到这个的Name就是Main Camera(如果你的第一个GameObject数据不是Main Camera也没关系,下面肯定某一个是Main Camera,展开那个数据也是一样的结构)。

    这个物体上有4个组件,一一对应下面的数据。这就是物体内的引用关系。每一个Unity对象都会有一个FileID,然后在需要引用时,使用这些FileID即可。所以在实例化一个这样的GameObject时,只要依照次序,依次创建物体,组件,初始化数据并进行引用绑定即可在场景中生成一个实例。

    请输入图片描述

    我们在Inspector面板中的右上角点击,然后选择Debug转成Debug模式下的Inspector面板:

    请输入图片描述

    在Hierarchy面板中选中Main Camera可以看到如图所示,所有的组件的LocalIdentfierInFile的值就是刚刚在Notepad++中看到的数据:

    请输入图片描述

    这里有一点,我们看到有一个叫做InstanceID的数据。这个是Unity中一个实例的ID。每一个Unity实例都会有一个InstanceID。在运行时,可以使用UnityEngine.Object的GetInstanceID获取。但是要注意的是,每一次运行,相当于重新生成了新的实例,所以这个值是可变的。

    2、组件数据

    在GameObject之后就是这个GameObject的组件数据(不知道次序会不会乱,理论上不影响)。每一个组件的数据基本上就是这个组件的一堆参数了。可以结合Unity中这个组件的面板来了解每一个数据的意义。

    这里有一个问题,比如这里有一个组件是FlareLayer,但是在YAML里面只是一个Behaviour(所有Behaviour组件都看不到类型名字),怎么样才能知道他是一个FlareLayer?

    请输入图片描述

    可以看到在这个数据上方,在FileID左边我们看到一个124。对,这个就是FlareLayer。请参考YAML Class ID Reference,每一个Unity类型都有一个对应的数字。

    那么自定义脚本类呢?

    我们创建一个Test脚本,继承MonoBehaviour。里面什么都不写。添加到Main Camera物体上。保存场景然后回到Notepad++。

    请输入图片描述

    可以看到多了一个MonoBehaviour,并且这个里面有一个M_Script数据,指向对应的GUID及其FileID。上文我们已经说了,任何一个文件都可以通过GUID找到,然后通过FileID找到它内部的子文件。所以这样就能识别出这个具体是什么类了。

    我们往Test中写2个字段

    • Public int A;
    • Public Test RefTest;

    在Main Camera中,设置Test脚本的A值为111,RefTest设置为自身。保存后回到Notepad++;
    请输入图片描述

    看到数据想必都明白了。

    可以往Test中写一些其他类型的数据,看看这些序列化数据放在YAML的哪个位置!这里不再展开(这些数据和编辑器的SerializedProperty息息相关)。

    3、Prefab数据

    在YAML的最下面有一个数据是Prefab数据:

    请输入图片描述

    看起来很复杂,但是实际上,它就保存了最重要的几个数据:

    • Modification:每个组件的修改数据列表,但凡修改的数据,都会在这里体现。
    • ParentPrefab:表示是哪一个Prefab。

    所以上面的数据就是GUID为27f1445c35c923741a22e4948c4da980的Prefab,修改后的FileID为4126423848245890的一堆数据和FileID为1854796474342856的Name数据。

    通过打开我们制作的Cube的Prefab文件及其meta文件,我们可以看到,Meta文件中的GUID就是那个,而Prefab中存在4126423848245890(Transform)和1854796474342856(GameObject)

    请输入图片描述
    请输入图片描述

    OK,至此,序列化文件的数据和引用的原理都已完毕。

    文末,再次感谢陈广忠的分享,如果您有任何独到的见解或者发现也欢迎联系我们,一起探讨。(QQ群:465082844)。
    也欢迎大家来积极参与U Sparkle开发者计划,简称"US",代表你和我,代表UWA和开发者在一起!


    展开全文
  • Android Studio重复引用文件解决方法

    千次阅读 2018-11-21 10:53:29
    对于引用的重复库的文件,去掉重复引用的模块。 1)去掉重复模块 aar中引用重复: // sophix热修复 compile 'com.aliyun.ams:alicloud-android-hotfix:3.2.6' compile('...
  • less-loader webpack provides an advanced mechanism to resolve files. The less-loader applies a ...看了官方文档和参考文档也没有明白是怎么回事,上面代码就是可以在一个less文件引用另一个less文件
  • go语言如何引用别的文件的内容

    万次阅读 2019-03-27 00:04:08
    go不同文件之间的相互引用靠包来实现,总结下来就是: 1,文件夹就是包,文件夹名就是包名 2,同一文件夹(包)下的所有文件可以视为同一文件,也就是可以随意拆分或者合并为一个或多个 go 文件都没有影响,文件名...
  • html文件相对路径引用

    千次阅读 2019-03-05 17:44:55
    本例环境是eclipse + 基于maven的web项目 + jdk7 + springmvc 1.本例目录如下截图 2.本例中static,views,WEB-INFO均在根目录下,且三个目录同级 ... 可以如下引用: &lt;link rel="style...
  • require引用文件路径方法与问题总结

    千次阅读 2012-03-23 18:45:16
    同一目录下的文件,如/usr/local/ruby/foo.rb与/usr/local/ruby/bar.rb两个文件。 如果直接在foo.rb中 查看源代码 打印帮助 1 require 'bar' 执行时会报找不到bar
  • vue中引用本地文件

    千次阅读 2020-06-05 18:10:32
    把自己下载好的字体通过 ...转换成可以用的文件格式,接下来就四步: 第一步:把解析好的文件全部引到项目中,不管在src下建个common的目录放进去还是直接放到assets下都...第三步:在main.js中引用css文件,可以在全局
  • js文件引用其他js文件

    万次阅读 2016-04-08 13:25:34
    在a.js中需要用到b.js中的方法,所以需要在a.js中引用b.js文件,js不提供类似java中import的导包语句所以只能添加元素到html文档,方法如下: 在a.js文件中写 方法一: document.write(""); 方法二:
  • html 已经声明; charset=utf-8">引用文件编码为utf-8 的 js文件(用editplus打开,此文件显示为utf-8编码):<script type="text/javascript" charset="UTF-8" src="/js/wap/reg.js"></script>在
  • 一个大项目,进行按功能分文件开发是很正常的,但是我今天遇到一个问题,就是一个文件引用另外一个功能的文件的时候,会报错,如下: 找了一圈,感觉都没人能给出一个正确的解释。后面发现,只要将当前文件所在的...
  • 把这些共有的属性抽取出来放在一个yaml文件中,问题来了:如何在测试用例的Yaml文件引用这些共享的Yaml文件: 测试用例的yaml文件:document.yml languages: - Ruby - Perl - Pythonwebsites: YAM...
  • 那么a.less文件中如何引用b.less中的文件呢?例子: 先新建如下的目录结构文件信息:index.html&lt;!doctype html&gt;&lt;html&gt; &lt;head&gt; &lt;meta charset="utf-8"&...
  • html <a>、、中src引用文件的路径问题

    万次阅读 2016-11-04 15:23:05
    但是在引用文件时,一定要引用正确的文件路径,不然是访问不到相关文件的。 总结一下,一共有如下几种方式引用相关文件: 前提: 相关目录结构: 方法一:使用相对于当前文件(源文件)的相对路径 这样在页面...
  • Latex引用bib文件的一个流程

    万次阅读 2019-08-17 15:46:05
    1.引用cite包 在文档开头引用cite宏包 \usepackage{cite} 2.制作bib文件 一般来说可以直接用Texstudio直接生成bib文件。步骤如下: 新建文件 去google scholar 或者 百度学术搜素你需要的论文: 方法见博客:学术...
  • C#添加引用配置文件

    千次阅读 2018-06-11 15:22:53
    在项目上,右键添加应用配置文件
  • 引用github 上的文件

    千次阅读 2019-01-01 18:22:29
    1. 找到需要引用文件     2. 点击 Raw 按钮  
  • 如果引用同一个工作工程下的另一个cpp文件,操作如下进行引用 #include"pathSum.cpp" 如果访问具体的类 如pathSum下的Solution 类,可以直接通过 Solution solution; 实例化类来进行访问。 class Solution { ...
  • js文件路径引用

    万次阅读 2018-03-19 11:27:19
    &lt;script src="/static/js/echarts.min.js"&gt;&lt;/script&gt;一般从webapp 后面开始考取路径
  • 可以运用import方式引用文件也可以运用include方式引用文件。然而在现在的微信小程序开发百度中,关于这方面的讲解还不够多太过于一笔带过,我在这通过自身学习,充分的了解到他的用法,来给大家阐述一下个人见解。...
  • python引入模块的顺序:首先现在当前文件夹下查找,如果没有...不同文件夹下模块引用方法 文件夹结构目录 A—  B-----  b1  b2  C------  c1  c2 C中方法要调用B中的方法 方法一: import sys ...
  • 在实际工作中,我们总是会用到nginx做为反向代理及统一出口内容的配置,这里我们记录下在实际项目中进行配置引用配置文件到初始配置文件中的实例。 基础配置文件内容nginx.conf worker_processes auto; events { ...
  • wpf 引用资源文件

    千次阅读 2014-05-04 11:29:01
    一、什么是资源 ...二、资源的定义及 XAML 中引用 资源可以定义在以下几个位置: 1 应用程序级资源 定义在 App.xaml 文件中, 作为整个应用程序共享的资源存在 ; 在 App.xaml 文件中定义:   
  • html 引用文件路径

    千次阅读 2012-10-31 16:28:05
    文件及目录: Assets\Css\Test.css Assets\Images\Button_Audit.png BUS\TestURLPath.aspx   源代码: Test.Css .div1 { background-image:url("/Assets/Images/Button_Audit.png"); background-repeat:no...
  • 答:鼠标右键点击方法或类名,选择查看所有引用。如下图:
  • python 引用其他的py文件的内容

    千次阅读 2019-03-20 15:49:05
    假设Python的脚本文件需要引用常量文件的常量,需要添加一下代码,找到多引用文件。 import sys curPath = os.path.abspath(os.path.dirname(__file__)) rootPath = os.path.split(curPath)[0] sys.path.append...
  • thinkphp5(TP5)引用外部文件

    万次阅读 2018-03-16 12:39:42
    项目需要引用第三方文件,因为用的是thinkphp5,在这里记录一下:1、在入口文件index.php文件里...3,、将被引用的类文件放在lib文件夹下,修改此类文件的命名空间,为namespace lib;4、在某个功能需要的使用该类文件...
  • python---引用其他py文件中的函数

    万次阅读 2017-12-09 10:31:22
    在想引用文件所在目录下和想执行的py目录下,新建一个文件: __init.py__,即可通过 相对路径的方式引用 方法1 目录如下: py_test/ ├── a │ ├── a .py │ └── __init__ .py ├── b │ ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,839,434
精华内容 735,773
关键字:

引用文件