自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

大坡3D软件开发

自主操作系统和CPU--用软件和芯片来改变世界

  • 博客(2953)
  • 资源 (44)
  • 收藏
  • 关注

原创 鸿蒙OS应用开发的开发环境

当你想投入到这个生态系统里的时候,首先是使用它,这是最方便的方法,比如买一台带有鸿蒙系统的手机,并且不断地使用它,提出你自己的建议,让它进行完善和改进。在这里主要开始学习开发鸿蒙系统的应用,由于鸿蒙系统发布的时间不是很久,当然是相对安卓和IOS来说,因此它是一个全新的系统,并且致力于创建一种更方便的软件方式,它引入不同于以往的软件开发语言,以及不同的界面接口。这时候,就可以看到应用的名称,包的名称,保存的位置,编译的SDK版本,运行模式,是否可视化编辑,语言,兼容性API,设备类型。

2023-12-07 12:31:53 614

原创 C#往压缩包Zip文件的文件追加数据

接着就可以使用ZipArchive.GetEntry(String) 方法获取这个索引项,最后就可以打开此文件进行读写的操作了。release是文件在压缩包里的目录名称,ExistingFile.txt是在这个目录下面的文件名称。往一个已经压缩好的压缩包里追加数据,一般就有两种方式,一种是前面已经学习过的,就是追加一个新的文件,在压缩包里声明的名称,与外面的文件路径又一点差别的,它是采用/来分隔目录与文件的层次关系。往已经存在的文件追加数据,需要先找到文件索引。C#往压缩包Zip文件的文件追加数据。

2024-09-19 10:29:47 22

原创 C#往压缩包Zip文件里创建一个新的文件

返回的对象readmeEntry是类ZipArchiveEntry的对象,它是用来操作压缩里的一个文件,比如这个文件删除、打开等属性。有时候拿到一个压缩包Zip文件,又不想使用程序把它解压出来,再添加一个文件进去,再进行压缩打包。比如一个游戏软件压缩包,可能比较大,如果解压再添加,就会速度比较慢,使用这种方法就可以直接添加。这里使用StreamWriter打开压缩包中的一个文件,然后就可以往这个文件里写入数据,并进行压缩的操作。创建在 zip 存档中有指定路径和项名的空项。

2024-09-17 22:11:35 377

原创 C#解压Zip文件到指定目录

/压缩文件文件路径。前面学习了怎么样把目录压缩到一个Zip文件,现在来学习怎么样把压缩文件解压到目录,这是学习解压缩文件的一个必须的操作。最后一个参数就是文件名称使用不同编码时需要使用的参数,如果是不同国家的操作系统就需要适应了。将指定 zip 存档中的所有文件解压缩到文件系统的一目录下,并使用项名称的指定字符编码。主要有两个参数,第一个参数是要解压缩的文件名称,第二个参数是解压缩到所在的目录。将指定 zip 存档中的所有文件都解压缩到文件系统的一个目录下。

2024-09-17 20:33:11 313

原创 C#使用ZipFile的方法CreateFromDirectory

因为数据是一种思想的表现,特别是ChatGPT的AI出现,导致很多数据无限地使用机器化地产生,所以数据压缩还是很常有的事情,毕竟压缩之后可以减少磁盘空间的占用。在C#里有一个专门处理磁盘压缩功能,它就是System.IO.Compression 命名空间,包含为流提供基本压缩和解压缩服务的类。第四个参数是表示是否包含目录的名称,如果设置为true表示包含目录名称,如果设置为false不包含目录名称。由于现在数据越来越大,虽然磁盘的大小也在增加,但是数据增加的速度是远超过磁盘的增加速度。该文件不应执行压缩。

2024-09-14 16:14:48 267

原创 C#操作Windows时间同步

有时候需要手动地同步系统的时间,这时就是从网络上进行同步时间。如果采用手动的方式,往往需要点击时间,并找到选项来进行。如果采用程序的方式,就可以定时进行同步,又可以手动地进行同步时间。

2024-09-12 13:20:09 283

原创 C#读取应用配置的简单类

WindowsFormsApp3.exe”(CLR v4.0.30319: WindowsFormsApp3.exe): 已加载“C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Xml\v4.0_4.0.0.0__b77a5c561934e089\System.Xml.dll”。因为工业应用的软件,往往是多变的,特别是同一个工厂就有不同的参数,这样参数管理配置,就成为工厂软件开发的必选项,并且要非常方便地操作,快速地使用。后期可以随着运行应用之后修改。

2024-09-12 09:34:58 338

原创 C#里使用位图容器BitArray

比如从网络协议里传送过来的字节流,就可以直接写入到里面,就可以直接获取对应的位图操作了。在C#里就是使用BitArray来管理位图数据结构,这样就比较方便处理。由于经常需要操作一些位表示的数据结构,那么就需要采用位图的管理方式。由于这个位图比较简单,只要搞懂下面的例子,就可以入门了。这个类可以有多种构造函数,可以满足绝大部分的要求。

2024-09-10 19:48:58 581

原创 Application.OpenForms[“Form2“]找不到窗口的问题

在WinForm开发里,很多人想判断窗口是否已经打开,所以使用窗口属性OpenForms来解决这个问题,但是它是有一个先决条件,就是在初始化函数InitializeComponent()里声明窗口的名称,不能只是在属性里默认创建的名称。这里采用遍历窗口列表,并使用is判断窗口类型方式,这样就不会出现上面的问题。否则这行代码永远返回空的。

2024-09-09 11:25:38 129

原创 鸿蒙应用开发之List容器

前面学习了表格类似的布局容器,在这里也有列表形式的容器,比如List容器。特别适合图片进行浏览显示,这样用户可以不断地滚动查看图片,差不多是无限查看的可能。.divider({ strokeWidth: 2, color: 0xFFFFFF, startMargin: 20, endMargin: 20 }) // 每行之间的分界线。.edgeEffect(EdgeEffect.Spring) // 滑动到边缘无效果。采用列面,本身就可以滚动,所以可以上下查看内容。这里设置的排列方向为竖直的排列方向。

2024-08-22 20:36:08 93

原创 鸿蒙应用开发之GridItem容器

.rowStart(1).rowEnd(2).columnStart(1).columnEnd(2) // 同时设置合理的行列号。}.columnStart(1).columnEnd(4) // 只设置列号,不会从第1列开始布局。从上图看到4字这项占用的空间比较大,其它的是一样的,这样的布局又是如何实现的呢?这时候就需要使用到GridItem容器。就是上面显示最后那列内容为5的表格。这样设置就会显示为4的单元格大小。

2024-08-16 11:24:54 83

原创 鸿蒙应用开发之Grid容器

而这个行列布局完全靠两个字符串来决定,因此,灵活性上来说,它没有GridRow容器灵活,但是它简单一些,对于大量元素显示的布局就比较合适,比如图片浏览显示等等。主要的属性就两个,第一个属性是columnsTemplate,它是设置每行多少列显示的。例如, '1fr 1fr 2fr' 是将父组件分3列,将父组件允许的宽分为4等份,第一列占1份,第二列占1份,第三列占2份。设置为'0fr'时,该列的列宽为0,不显示GridItem。如果这两个属性都设置,那么只按照这个设置进行显示,多余不会显示。

2024-08-08 10:00:03 102

原创 鸿蒙应用开发之GridRow和GridCol容器

在不同屏幕上布局是一个比较困难的问题,因为屏幕大小不一样,导致内容布局会比较混乱。所以提出一种网络的方式来布局,即使屏幕大小改变了,但是布局行列数不变,那么内容就不会混乱。这个参数是用来设置判断不同屏幕大小时,进行切换的判断标准。当屏幕大小为xs时,空间占用两格,当屏幕为sm时,占用3格,当为md时,占用4格。这个参数是用来表示每格之间的间距,x是表示横向方向,y是表示竖向方式。要想把这种布局搞好,还是需要不断试验和修改才能调整适合不同设备的界面。所以可以根据这个情况来设置界面的布局。主要有上面这些标志。

2024-08-06 12:01:58 111

原创 鸿蒙应用开发之Flex容器

前面学习了Column等容器,现在学习一个灵活弹性的容器,它就是Flex容器。它可以让容器里面的组件按不同的方式来排序前后,而不需要调整界面显示的代码。在这里可以看到组件显示的方向不一样,前面一行是从左到右进行布局,而后面一行是从右到左布局。针对这种需求,只能使用Flex容器才能方便实现。标准Flex布局容器。这是方向参数的区别。

2024-07-13 12:11:09 720 1

原创 鸿蒙应用开发之Counter容器

要在文本组件里显示出来,需要定义一个数字变量,然后在上面两个事件里对这个变量进行计数,点击减少就对变量进行减少,点击增加就对变量进行增加,然后就可以在文本组件里显示出变量的值变化。这段就是事件响应代码,如果变量值不是按1变化,可以按10变化地修改。上面组件中间显示5的组件是一个文本组件,边上提供了增减的按钮。

2024-07-11 11:40:31 746

原创 鸿蒙应用开发之ColumnSplit容器

这样就可以拖动的操作了。

2024-07-11 11:21:28 845

原创 鸿蒙应用开发之Column容器

这个Column容器设置显示为上一个容器的90%宽度,所以在手机两边就留有空间。其中看到每个边框有实线的也是一个Column容器,这里只不过把它的边框显示出来,最外面这个Column没有把边框线显示出来。先在最外面建立一个Column容器,space和方框显示等显示内容都是作为一行进行排列。如果一行里子容器不填满宽度,那么就需要进行排列,默认是中间排列,也可以设置为从左向右,或者从右向左都可行。这个容器已经使用了很多次,但是还是需要来简单地学习一下,它的主要作用是沿垂直方向布局的容器。

2024-07-05 10:26:19 133

原创 鸿蒙应用开发之Badge容器

在开发应用的时候,经常需要一些提示,特别当用户打开应用时,有一些事情需要提醒一下用户,但是不能自动打开这个窗口提示,这样会让用户比较烦。方法1: Badge(value: {count: number, position?在这里显示红点的地方,就是目前介绍的容器Badge实现的功能。从上面来看,有三种不同的形式,一种是在图标上显示一个红点,一种是图标后面显示红色文字,最后一种是显示一个数量。方法2: Badge(value: {value: string, position?根据字符串创建标记组件。

2024-07-04 10:28:55 118

原创 鸿蒙应用开发之OpenGL的EGL

EGL 是渲染 API(如 OpenGL ES)和原生窗口系统之间的接口,通常来说,OpenGL 是一个操作 GPU 的 API,它通过驱动向 GPU 发送相关指令,控制图形渲染管线状态机的运行状态,但是当涉及到与本地窗口系统进行交互时,就需要这么一个中间层,且它最好是与平台无关的,因此 EGL 被设计出来,作为 OpenGL 和原生窗口系统之间的桥梁。这也许就是EGL的功劳吧,简单地说EGL就是Opengl和平台各平台之间的一个适配器,是一系列的接口,具体实现是由具体的设备厂商实现的。

2024-06-29 12:23:31 170

原创 鸿蒙应用开发之OpenGL绘画三角形

并且使用GL_FLOAT类型,由于坐标值已经归一化,也就是在-1到1之间,所以设置为GL_FALSE,无须归一化处理。可用的符号常量有GL_BYTE, GL_UNSIGNED_BYTE, GL_SHORT,GL_UNSIGNED_SHORT, GL_FIXED, 和 GL_FLOAT,初始值为GL_FLOAT。这个数组定义了三角形的三个坐标,第一个顶点是(0.0f, 0.5f, 0.0f),第二个顶点是(-0.5f, -0.5f, 0.0f),第三个顶点是(0.5f, -0.5f, 0.0f)。

2024-06-04 11:25:06 230

原创 鸿蒙应用开发之OpenGL应用和X组件12

如果成功,就会返回非0值,这时候就可以返回整个编译后的着色器对象shader,否则后面就去查找编译出错的原因。这段代码把上面的x组件的ID转换为string串对象,然后调用函数 PluginRender::GetInstance获取渲染对象render ,最后调用渲染对象的函数render->m_eglCore->ChangeColor。这个函数主要传入两个参数,第一个参数type是加载着色器的类型,在这里主要有两种,一种是GL_VERTEX_SHADER,另外一种是GL_FRAGMENT_SHADER;

2024-06-03 10:05:07 255

原创 鸿蒙应用开发之OpenGL应用和X组件11

在这个函数,先设置m_flag标志,这个标志是用来表示是否画四边形,如果为false表示还没有画四边形,这时候点击界面就不会改变颜色。这段代码就可以通过X组件的指针来获取X组件的ID字符串,把它保存在变量idStr,这样后面就可以通过ID串来找到对应的渲染对象。这段代码从环境变量里获取X组件的指针,保存在exportInstance里,后面会通过X组件指针来操作X组件。要显示四边形,先要构造一个四边形的顶点数组。在上面这段代码里,先进行日志输出,然后进行参数判断,如果参数不正确就返回出错。

2024-05-31 09:04:03 787 1

原创 鸿蒙应用开发之OpenGL应用和X组件10

ExecuteDraw的作用是设置要显示图形的顶点坐标,以及显示的颜色,并进行绘制。这个函数输入几个参数,第一个参数position是用来表明是哪一个索引输入位置,是从函数glGetAttribLocation(m_program, POSITION_NAME)里获取的返回值,其实就是"a_position"的位置,也就是顶点坐标的输入索引;在这里使用这行代码glVertexAttrib4fv(1, color)来设置所有顶点的颜色值,这里指定的索引号为1,也就是GLSL程序里的位置1的颜色索引。

2024-05-30 09:57:24 140

原创 鸿蒙应用开发之OpenGL应用和X组件9

着色器程序对象相当于着色器对象的容器,和任何OpenGL管理的对象一样,在使用着色器程序对象之前,需要通过glCreateProgram接口来创建出一个着色器程序对象。这段代码就是对前面进行链接的程序进行判断是否出错,如果连接成功就可以返回当前的程序进行使用,当前程序是保存在变量program里。这段代码调用glAttachShader进行关联到着色器管理对象,这样顶点着色器和片段着色器就放到管理对象里面,最后调用glLinkProgram来进行连接,才能生成GPU执行的二进制程序。

2024-05-29 09:53:17 178

原创 鸿蒙应用开发之OpenGL应用和X组件8

layout(location = 0),叫做布局限定符,目的是为了方便给变量提供数据,layout()的还有其他的选项,在这里location相当于设定了变量在着色器程序中的访问位置。还需要注意的是,变量名不能以 gl_ 作为前缀,这个是 GLSL 保留的前缀,用于 GLSL 的内部变量。gl_Position vec4 输出属性,变换后的顶点位置,用于后面的裁剪等操作,所有的顶点着色器都必须写这个值。gl_MultiTexColor vec4 输入属性,表示的是顶点的第n个纹理的坐标。

2024-05-28 10:11:25 183

原创 鸿蒙应用开发之OpenGL应用和X组件7

在前面介绍了X组件调用函数来初始化,初始化之后,就需要调用EGL函数来初始化OpenGL的环境,才能使用OpenGL函数来绘制图形。调用 EGLboolean eglInitialize(EGLDisplay dpy, EGLint *major, EGLint *minor),该函数会进行一些内部初始化工作,并传回EGL版本号(major.minor)。保存窗口的宽度和高度,以便后面使用。这段代码开始进行初始化EGL,主要是调用eglInitialize函数,然后获取OpenGL的版本号。

2024-05-27 12:12:03 170

原创 鸿蒙应用开发之OpenGL应用和X组件6

接着重要的功能,就是设置X组件回调函数对象m_callback,它的4个调函数指针,都设置好之后,就可以给X组件进行处理了。前面已经分析怎么样注册X组件的回调函数,然后这些回调函数就可以在X组件合适的时机进行回调,就可以让C++的代码在合适的时间做合适的事情。在这段代码,先从容器里查找是否在存在这个ID的X组件插件,如果没有就会创建一个PluginRender对象,这个对象负责注册回调对象维护,并且管理显示图像的对象。在这个回调函数里,传入两个参数,第一个参数component是一个X组件的指针;

2024-05-24 12:24:12 378

原创 鸿蒙应用开发之OpenGL应用和X组件5

这段代码就通过NAPI的函数napi_get_named_property获取X组件的通用指针,它定义名称为OH_NATIVE_XCOMPONENT_OBJ,这是X组件在C++端的名称。这段代码就是使用获得的X组件的指针,然后通过函数OH_NativeXComponent_GetXComponentId来获取X组件的ID,这个ID保存在idStr数组里,给后面使用。因此,我们需要注册C++层的回调函数OnSurfaceCreated,这样当X组件创建成功之后调用我们在C++里的代码。

2024-05-22 11:59:36 175

原创 鸿蒙应用开发之OpenGL应用和X组件4

接着就是做主要的事情,映射库的导出方法getContext,这是在ArkTS里看到的方法,在C++里实际上是函数PluginManager::GetContext,这个函数也是一个静态的全局函数,可以任何地方调用,并且这个函数里的访问变量也是全局的。这行代码干的活比较多,首先要拿到X组件在C++里的指针,然后绑定这个X组件和ID关系,并且注册X组件的回调函数,这样才能根据X组件的生命周期来处理界面,最后还需要导出X组件交互函数,以便用户在X组件点击时触发C++层的代码运行。接着查找GLES库。

2024-05-21 10:39:18 157

原创 鸿蒙应用开发之OpenGL应用和X组件3

这些函数都是根据APP生命周期来调用库里的函数,这样库里的函数就可以根据这些函数来安排不同的代码执行了,在这个例子里基本上就是打印一个日志输出,没有什么实质内容。前面已经分析应用生命周期和页面生命周期,所以我们需要在OpenGL开发的库里区分这两个状态,以便在不同的状态下导出不同的函数给TS侧使用。然后返回一个任何类型的对象。上面页面的生命周期的调用顺序流程图,根据流程图,就可以在将要显示的函数加载资源文件,以便在显示出来时就能画到界面上。这样在C++开发的代码库里,就可以根据这些函数来执行需要的代码。

2024-05-20 11:49:01 169

原创 鸿蒙应用开发之OpenGL应用和X组件2

紧跟着下来onLoad方法设置加载XComponent组件成功之后获取这个组件对应的对象,保存在变量this.xComponentContext,这样后面就可以调用它为更新X组件绘制的内容,达到交互的目的。在这里要注意的是显示文本串是从资源里加载,并且资源里有中英资源,可以根据系统的语言来自动切换不同的语言显示的。在X组件里又设置了这个库的名称,那么在加载X组件时,就会自动要求系统加载这个库,当这个库加载完成之后,就会调用。从上面可知,应用生命周期是大于页面生命周期的,所以需要区分所处状态。

2024-05-20 10:15:43 215

原创 鸿蒙应用开发之OpenGL应用和X组件1

前面学习调用C++开发的代码库,这样可以加入C++语言来开发鸿蒙应用,加快对一些要求运算速度比较高的场合,也提高对旧的项目移植性。前面的C++语言开发的应用,只是简单的调用功能计算,并没有C++代码来操作界面的要求,并且没有使用复杂的C++的功能,这里不仅要在C++里输出图形到界面,并且还是采用OpenGL来开发,OpenGL就是一个非常复杂的库,以及不同的编程习惯。从上图我们就可以看到整个软件的基本组成,与前面学习的C++开发代码库是一样的,只是不同的文件,以及增加X组件的应用。

2024-05-17 12:12:46 813 1

原创 鸿蒙应用开发之调用C++开发代码库4

在这里调用函数napi_create_double,它是用来从C++类型double创建一个JS类型对象返回,并且把返回结果保存在变量napiResult,由于napi_value是指针,那么&napiResult就是指向指针的指针。返回值采用napi_value类型定义,napi_value类型是一个指针类型,并且是一个通用的指针类型,其实它就是相当于void*类型,可以保存任何类型的数值指针。接着定义它返回napi_value类型,这个类型是NAPI的通用类型,可以表示数字、字符串和布尔值等。

2024-05-16 12:14:01 203

原创 鸿蒙应用开发之调用C++开发代码库3

extern "C"的作用就是声明这个函数是以C语言接口方式导出,方便JS引擎加载模块时,可以按C的方式执行函数RegisterModule,RegisterModule的作用是把本模块的信息demoModule放到引擎的调用队列里,以便后面TS代码执行时去查找队列。"myHypot"是声明在文件index.d.ts的函数,也就是JS引擎可以识别的函数,而MyHypot是C++的函数,这中间的转换就靠NAPI框架转换了。我们从JS调用框架图就知道,调用主要分为三层,JS开发的C++模块、框架层、JS引擎。

2024-05-16 09:03:16 275

原创 鸿蒙应用开发之调用C++开发代码库2

是C++库,版本为10.0.1,libc++ 是C++标准库的一种实现,C++11、C++14标准已完全支持,C++17和C++20标准正在完善。接着下来先分析C++部分的代码,主要关注点是C++代码要怎么样编写,才能被ArkTS代码调用,它们之间的数据类型又是怎么样转换的。有了这两个文件,就可以知道C++代码生成库的名称为libhello.so,并且符合index.d.ts类型导出的动态连接库。在这里定义了加载C++库的名称为libhello.so,同时指明类型声明在文件./index.d.ts里。

2024-05-15 10:11:50 589

原创 鸿蒙应用开发之调用C++开发代码库1

由于鸿蒙应用主要基于ArkTS开发,主要使用的语言是ETS,也就是JS脚本方式来开发,这与C++语言开发是不同的语言,这样就不能直接相互调用,因为不同的语言使用不同的数据结构,不同的调用方式,不同的运行环境。因为C++语言开发的底层库已经比较长的时间,即使不考虑性能的情况之下,也需要很大的工作量来重写和测试,所以ArkTS一定需要能调用C++代码的能力,这样才能方便旧的项目,或者性能要求比较高的项目进行开发。简单起见,先来学习一个鸿蒙代码库提供的一个例子,这样杜绝各种创建项目的不同,以及填写不同的参数。

2024-05-14 17:08:14 502

原创 鸿蒙应用开发之Web组件7

前面学习了Web组件选择文件文件上传的处理,现在来学习怎么样在一个Web容器里,再打开一个窗口来显示内容,相当于弹出另一个Web组件窗口,其实相当于两个Web组件同时在操作的方式。要想让Web组件运行上述的网页,就需要处理打开窗口的功能。”,当我们点击这个按钮之后,就需要Web组件来处理,并且打开一个窗口来显示。需要创建一个新的Web组件控制器WebviewController,同时创建一个新的Web组件来显示。这个是子窗口显示的Web组件,在前面介绍的窗口事件函数里响应处理,调用它来创建子窗口。

2024-05-13 13:24:40 108

原创 鸿蒙应用开发之Web组件6

前面学习怎么样设置Web界面显示不同的颜色配置,这种适合不同时间来设置,比如白天要亮一些,晚上要暗一些。现在来学习使用Web组件选择文件文件列表的功能。由于这个方法在模拟器里运行不成功,需要使用真实手机来测试,所以需要连接手机。第三步返回设置页面,搜索“开发人员选项”,然后打开“开发人员选项”。后面就可以根据自己的需要来设置开发人员选项了。这样就可以使用真机来调试APP了。第四步把开发选项打开。

2024-04-23 11:56:31 132

原创 鸿蒙应用开发之Web组件5

通过darkMode()接口可以配置不同的深色模式,WebDarkMode.Off模式表示关闭深色模式。WebDarkMode.On表示开启深色模式,并且深色模式跟随前端页面。WebDarkMode.Auto表示开启深色模式,并且深色模式跟随系统。前面学习了Web加载程序内置的HTML数据来显示,这样可以加速界面的显示,接着下来学习怎么样设置Web组件显示界面的背景配色。有了这个接口,就可以设置Web为不同的颜色。可以看到上面界面全部变成黑色背景了。一般情况下,Web组件是采用默认跟随系统设置的背景颜色。

2024-04-22 18:18:15 119

原创 鸿蒙应用开发之Web组件4

前面学习了Web组件加载本地的文件数据,这样很方便不需要网络的界面显示,或者提示类的界面,比如软件使用说明书,又比如软件使用协议,又或者固定显示的长文本数据。如果有多个文件,也可以通过按钮来切换不同的文件显示。如果文本比较短小的HTML数据,放到文件里,再通过文件显示,就会多了一个访问文件的过程,这样导致显示数据有点慢,面对这样的需求又有什么样的解决方案呢?这样就可以快速地实现程序内嵌数据的快速显示。下面就来通过例子来演示这个接口的使用。有了这个接口,就轻而易举了。

2024-04-22 10:36:02 247

python抓取天气并分析 实例源码

Python代码抓取获取天气预报信息源码讲解。这是一个用Python编写抓取天气预报的代码示例,用python写天气查询软件程序很简单。这段代码可以获取当地的天气和、任意城市的天气预报,原理是根据url找到网站截取相应的数据展现。 python抓取广州天气并分析 实例源码

2017-08-28

wix3.11版本安装工具

wix3.11版本安装工具

2017-06-19

WiX3.10版本安装工具

WiX3.10版本安装工具

2017-06-19

GOOGLE的TPU论文

GOOGLE公开TPU的论文

2017-04-06

深度强化学习论文

DQN的论文

2017-03-17

书《深度学习》

2015年,深度学习三大牛Yann LeCun、Yoshua Bengio和Geoffrey Hinton在最新的《Nature》杂志首次合作的发表综述文章《Deep Learning》。本文为该综述文章的中文译文,深入浅出地介绍了深度学习的基本原理,核心优势和未来展望。

2017-03-13

手写识别的训练数据

MNIST训练数据

2017-03-10

俄罗斯方块游戏开发

俄罗斯方块游戏开发培训里的可执行文件,让大家可以查看相关的结果。以便是否参加培训。

2016-11-30

duilib界面库20161116

更新为VC2015编译的duilib,持续重构代码,使用最新的C++14的语法。

2016-11-16

duilib界面库20161017

duilib 界面库

2016-10-17

duilib界面库

duilib界面库,长期维护的界面库,在WIN10和VS2012上编译和开发、测试通过。

2016-10-10

国产8051模拟器

一款国产的8051模拟器(全部源代码) 本软件是一款8051模拟器,他的特点是可以模拟多处理器平台,在简单的多工作区间的界面上可以很方便的模拟8051处理器, 最重要的是这个单片机系统可以完全由你自己订制,你甚至可以随意创建自己的多单片机系统,什么SMP 基于串行总线的分布式系统,集群式系统,只要你能想到的,都可以办到,充分发挥你的想象力。现在1.0版本已经基本体现出了这种思想,在以后的版本中将使这一特性变的 更加强大!

2016-09-10

mysql开发管理工具

mysql数据库的开发管理工具。

2016-07-12

mysql-5.5.50-64

windows下的64位MYSQL的版本。

2016-07-10

python-3.4.4

python 3.4的32位的windows版本

2016-07-01

tinyxml2配套源码

在软件开发过程中,为了使软件有灵活的配置,特别像界面这样的配置,同时为了减轻重复开发的任务,需要把客户的个性化需求可以通过配置文件来修改,比如像界面的颜色配置,就可通过配置文件来修改,这时就可以采用XML文件来保存和修改这些参数配置。在不同软件之间进行通讯时,也可以采用XML协议来进行数据交换,特别像WEB服务的调用时,采用传送XML格式是基本的数据交换方式。基于这些任务的需求,需要软件开发人员会在C++里使用xml格式。

2016-06-27

protoc2.5执行文件

protoc执行文件

2016-06-24

protobuf 2.5

protobuf 2.5库代码和工具

2016-06-24

selenium的浏览器驱动

目前有很多的银行网站,还是以IE为标准的浏览器,因此这里主要采用IE为测试的例子,在这里可以下载不同版本的浏览器驱动,可以是32位的,也可以是64位的,根据自己的需要下载不同的版本。在本文章里,下载的是2.35.3版本:IEDriverServer.exe,把它放在目录f:\temp\里面。

2016-06-14

WIX制作C#应用程序安装包

WIX制作C#应用程序安装包

2016-05-26

开源鸿蒙4.0不能进入桌面的补丁

系统启动后进入不到桌面 当前系统有 bug,当出现此种问题时,需要执行 killall com.ohos.launcher。 里面的hap文件替换applications\standard\hap\下的同名文件。 目录 oh/applications/standard/hap

2024-03-17

开源鸿蒙 4.0 RK3566开发板配置

开源鸿蒙 4.0 RK3566开发板配置 https://mysoft.blog.csdn.net/article/details/136779805

2024-03-17

使用WeifenLuo.WinFormsUI.Docking的简单例子

使用WeifenLuo.WinFormsUI.Docking的简单例子,演示了简单地使用这个窗口布局库。

2021-12-10

hui_test_form.rar

H-ui.admin_v3.1.3.1的学习和测试例子,前端代码的经典。

2021-08-17

python_example.rar

pybind11的安装和编译的例子,可以快速地生成安装包。

2021-06-24

Mysql_20210615_1.rar

演示访问Mysql库的C++类库QTL

2021-06-15

TestSel1.rar

爬虫日记(28):scrapy使用中间件调用浏览器 相关代码

2021-03-29

ItemDemo_ua.rar

爬虫日记(25):Scrapy 中设置随机 User-Agent 二 的配套代码

2021-03-26

爬虫日记 Imgfn1.rar

爬虫日记(23):用scrapy快速地爬取蜂鸟网图片 相关的项目代码

2021-03-24

ImgDemo1.rar

爬虫日记(22):最简单地抓取图片,仅5行代码 相关配套代码。

2021-03-23

ItemDemo3.rar

爬虫日记(21):使用Pipeline模块写入文件二 的配套代码。

2021-03-23

ItemDemo2.rar

爬虫日记(20):使用Pipeline模块写入文件 的例子

2021-03-22

ItemDemo.rar

实例使用Item对象,适用初学者,《爬虫日记》配套源码。

2021-03-21

svm_hog_data.rar

使用到LineSVC里进行机器学习的训练数据,用来训练手写识别。 配套专栏文章使用,https://blog.csdn.net/caimouse/article/details/104599920。

2020-03-02

实现numpy的C++库扩展

使用C++来扩展numpy里的数据计算,这时就需要使用numpy的扩展库功能了,下面就来提供一个使用C++编写numpy扩展库的模板,这样大家就要减少很多弯路,减少跌入坑里的成本。这个扩展库的模板是从mahotas库里抽取出来的,经过最大化的简化,这样更加容易理解,更方便学习。

2019-11-24

STM32F407VET6工程模板

玩转STM32里文章配置的代码,这里学习的第一个工程代码,可以作为后继开发的模板工程。

2019-03-14

python web py入门配套源代码

python web py入门- 实现论坛,开发技术:后端采用Python+web.py+MySQL,前端采用HTML+CSS+JavaScript+jQuery+RequireJS。

2018-02-23

webpy演示例子1

webpy演示例子1, 用于配套文章相关资源。python web py入门(9)- 论坛首页的模板中模板 前面已经提到一个模板中可以套用另外一个模板,现在就来看看这个论坛基本布局模板是怎么样的?

2018-02-21

胶囊模型的代码

胶囊模型的代码在以下论文中使用: “Dynamic Routing between Capsules” by Sara Sabour, Nickolas Frosst, Geoffrey E. Hinton. 要求 TensorFlow ( 访问 http://www.tensorflow.org 了解如何安装和升级) NumPy (详见http://www.numpy.org/) GPU

2018-02-02

C++读写json文件

https://github.com/nlohmann/json 最好用的C++读写json库

2017-12-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除