MakeCode 递归生成资源文件

static void yieldDir(DirectoryInfo dir, int depth, StringBuilder sb1, StringBuilder sb2) {

			var firstFlag = "";
			var firstFlag1 = "";
			var dirtmp = dir;
			for (int a = 0; a < depth; a++) {
				var dirtmpname = Regex.Replace(dirtmp.Name, @"[^\w]", "_");
				firstFlag = string.Concat(dirtmp.Name, @"\", firstFlag);
				firstFlag1 = string.Concat(dirtmpname, @"_", firstFlag1);
				dirtmp = dirtmp.Parent;
			}

			foreach (var f11 in dir.GetFiles()) {
				var f = f11.Name;
				var f1 = Regex.Replace(f, @"[^\w]", "_");
				sb1.Append([email protected]"
  <data name=""{firstFlag1}{f1}"" type=""System.Resources.ResXFileRef, System.Windows.Forms"">
    <value>..\Resources\{firstFlag}{f};System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8</value>
  </data>");
				sb2.Append([email protected]"
loc1.Add(new BuildInfo(string.Concat(CONST.corePath, @""Common\{firstFlag}{f}""), Deflate.Compress(Properties.Resources.{firstFlag1}{f1})));");
			}
			foreach(var d11 in dir.GetDirectories()) {
				yieldDir(d11, depth + 1, sb1, sb2);
			}
		}

			var dir = new DirectoryInfo(@"C:\Users\Administrator\Desktop\mc(core+mysql)\Server\Resources\CSRedis");
			StringBuilder sb1 = new StringBuilder();
			StringBuilder sb2 = new StringBuilder();
			yieldDir(dir, 1, sb1, sb2);
			File.WriteAllText(@"test.txt", sb1.ToString() + sb2.ToString());

  

时间: 2024-12-28 22:43:19

MakeCode 递归生成资源文件的相关文章

Delphi 中将一些 Dll等生成资源文件打包成一个独立的EXE程序方法步骤

资源文件一般为扩展名为res的文件,其自带的资源编译工具BRCC32.EXE(位于/Delphi/BIN目录下) 1.编写rc脚本文本 用记事本或其它文本编辑器编写一个扩展名为rc的文件,格式分别为在资源文件中的名称->类型->实际文件名称. 例如:要将文件名 demo.Dll的文件打包成一个资源文件,首先 新建一个文本文档,输入内容 mydemoDll RCDATA demo.DLL mydemoDll 和 RCDATA 你可以随便写,这个是为了在使用资源时定义的名称和类型你也可以写成:a

【JAVA】使用Eclipse依赖生成jar包时,避免最外层同时生成资源文件的配置。

使用Eclipse依赖生成jar包时,如果做配置,生成的jar包文件会全部生成在外面,这并不是我们需要的,下面我们一起来修改下配置,使生成的jar包符合我们的需求吧. 1.如果不做任何配置生成的jar包如下. 这样最原始的生成方式并不是我们想要的,我们想要的是test.properties和ums.properties文件同时放到message文件夹里面,下面修改一下Eclipse配置. 2.修改Eclipse配置,使test.properties和ums.properties文件同时放到mes

生成资源文件时候,可以动态替换为maven属性

1.maven管理的文件或者是maven插件处理的文件中   可以引用maven属性,在编译输出时候,可以替换   ${project.build.testOutputDirectory}   在资源目录下的属性文件中可以引用这个maven属性 原文地址:https://www.cnblogs.com/justart/p/11519709.html

Android学习--Assets资源文件读取及AssetManager介绍

APK安装过程 复制APK安装包到data/app目录下,解压并扫描安装包,把dex文件(Dalvik字节码)保存到dalvik-cache目录,并data/data目录下创建对应的应用数据目录,Android系统在sdcard上为每一个应用分配了存储路径:/sdcard/Android/data/$(应用的包路径),该路径可以通过 context.getExternalFilesDir 得到,一般应用卸载的时候,该目录也会随之被删除. Android资源文件分为两类: 第一种是res目录下存放

delphi 资源文件详解

delphi资源文件详解 一.引子: 现在的Windows应用程序几乎都使用图标.图片.光标.声音等,我们称它们为资源(Resource).最简单的使用资源的办法是把这些资源的源文件打入软件包,以方便程序需要的时候调用.资源是程序的一部分,程序要正常运行就离不了资源文件.但是它是不可执行代码. 为了更好地管理资源,Delphi中提供了一种.RES类型的资源文件.它可以把我们程序中所需要的资源整合到一个资源文件(.RES)下来.在编译应用程序时直接编译进了可执行程序里,成为应用程序的整合体. 这样

Pyqt 打包资源文件

用打包工具将做好的Pyqt程序打包成exe后发现引用的资源图片都显示不了? 是否遇到了和我一样的问题呢.google之后找到了方法,一种方法是在程序中引用外部资源,另外一种方法是将资源文件转换为py文件,然后引用py.下面我们详细来实现后者方法实现的过程 一. 生成资源文件 要把资源文件转换为py文件首先要有资源文件,我们打开Qt Designer,添加资源文件 保存好资源文件后缀是以 .qrc  结尾的,用notepad++查看.qrc文件发现该文件其实为XML 1 <RCC> 2 <

Java或者JAR包获取读取资源文件的路径的问题总结

这里分为具体两种: 第一种:资源文件为一般后缀文件 第二种:资源文件为图片文件 [NO1]第一种 使用这行代码可以获取class类的根目录的路径 String path =Thread.currentThread().getContextClassLoader().getResource("").getPath(); 例子:我用的开发软件MyEclipse 6.5 假设项目文件夹如下: files---bin--core(生成class包) |               |     

c#资源文件处理入门

c# 工程里面,经常会添加资源文件. 作用: 一处文本多个地方的UI使用,最好把文本抽成资源,多处调用使用一处资源. 多语言版本支持,一份代码支持多国语言.配置多国语言的资源文件,调用处引用资源. 入门资源,txt格式文本 新建一个txt,写两个资源,name 和 age 使用工具 resgen.exe 生成资源文件. resgen my-resource.txt 查看产物: 查看二进制文件到底长啥样,可以看到里面写了我们存的两个资源.至于其他文本估计是微软自己搞得格式 现在我们编写最简单的c#

Android导入工程,R 资源文件无法生成

在Android中使用开源代码或者自己开发项目的时候,经常会遇到R.java文件丢失的情况,如何重新生成呢?网上一般给出这样的两种方法: 方法 1:右击你的工程(项目)——>Android Tools——>Fix Project Properties 即可.方法 2:右击你的工程(项目)——>Properties——>Android ——> 选择相应的target 然后 点击 apply 即可.但是,我今天在调试一个开源项目的时候,发现这两种方法都不可行.后来发现如果资源文件