Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux

C#如何在生成文件夹或者文件时候自动重命名

C#如何在生成文件夹或者文件时候自动重命名

C#如何在生成文件夹或者文件时候自动重命名如果你在一个文件夹里面, 连续添加文件夹或者文件(不改名字), 那么系统会自动加上(1),(2),(3)...这个效果我在网上搜不到, 自己写一下也不太难.文件夹的:(不断点击按钮就有效果)private void btnAdd_Click(object sender, EventArgs e) { string dir = @"d:KuGouCacheabc"; string newdi...
Perl中的真与假

Perl中的真与假

Perl认为真值是自明的(self-evident), 表示任何事物的真值都可以计算。Perl以实用的方式来定义真值,即一个实体的真值取决于这个实体的类型。Perl总是乐观的认为:这个世界上真的东西远比假的东西多的多。Perl区别与任何其他计算机语言,Perl是语言学家创造的,而语言的意思离不开上下文语境,所以Perl中的真值都可以在标量(标量$与数组@类似于英文中的单数与复数, book 与 books的区别, 真值在现实世界中,应该就是单数,所以是标量...
Java多线程中易混淆的概念

Java多线程中易混淆的概念

概述最近在看《ThinKing In Java》,看到多线程章节时觉得有一些概念比较容易混淆有必要总结一下,虽然都不是新的东西,不过还是蛮重要,很基本的,在开发或阅读源码中经常会遇到,在这里就简单的做个总结。1.volatilevolatile主要是用来在多线程中同步变量。在一般情况下,为了提升性能,每个线程在运行时都会将主内存中的变量保存一份在自己的内存中作为变量副本,但是这样就很容易出现多个线程中保存的副本变量不一致,或与主内存的中的变量值不一致的情况...
探究Android SQLite3多线程

探究Android SQLite3多线程

最近做项目时在多线程读写数据库时抛出了异常,这自然是我对SQlite3有理解不到位的地方,所以事后仔细探究了一番。关于getWriteableDataBase()和getReadableDatabase()的真正作用getWriteableDataBase()其实是相当于getReadableDatabase()的一个子方法,getWriteableDataBase()是只能返回一个以读写方式打开的SQLiteDatabase的引用,如果此时数据库不可写时...
HashMap在Android和Java中的不同实现

HashMap在Android和Java中的不同实现

起因今天在项目中遇到一个很"奇葩"的问题。情况大致是这样的:Android终端和服务器(Spring),完全相同的字符串键值对放入HashMap中竟然顺序不一样,这直接导致了服务器和Android终端用HmacSHA256算法加密出的摘要也不一样,服务器也就无法进行正确的数据验证。然后带着郁闷的心情给程序加断点进行原因寻找,发现原来是HashMap的中服务器和终端双方对于同样的key存放顺序竟然不一样!在HashCode产生冲突的情况下,不同的key在Ha...
[Android]使用 Eclipse 给 APK 签名时遇到的两个问题及解决办法

[Android]使用 Eclipse 给 APK 签名时遇到的两个问题及解决办法

问题 今天用 APK 反编译工具看了一下自己项目生成的 APK 文件,发现代码并没有混淆,于是设置了用 ProGuard 混淆代码,可是混淆是必须在非 Debug 模式才会生效的,即使你是以 Release 模式来 Run As 启动所生成的 APK 包,依然是没有使用 ProGuard 混淆的。于是决定导出一下 Release 版的 APK,导出分“签名”和“不签名”的两种,都这么做了,当然是要签名一下了...
[Android]Eclipse 无法正常更新 Android SDK Manager 的解决办法〔使用 GoAgent)

[Android]Eclipse 无法正常更新 Android SDK Manager 的解决办法〔使用 GoAgent)

起因 要用 Eclipse 做 Android 开发,当装好了 ADT(Android Deveopment Tooling) 之后(可参考前一篇《[Android]Eclipse 安装 ADT[Android Development Tooling] 失败的两种解决办法》),接下来就会遇到 Android SDK Manager 无法正常更新的问题,因为 GFW 的关系,无法直接访问 https://dl-ssl.google.com,这个问题比更新 ...
通过 AngularJS 和 ASP.NET MVC5 实现文件上传

通过 AngularJS 和 ASP.NET MVC5 实现文件上传

这是什么?如题所示,在这里我将展示一种使用Angular.js和ASP.NET MVC5 来实现上传文件非常简单的方法.为什么这样做?网上已经有很多库实现这个功能了.而我的方法会有什么特别之处呢?如果你已经意识到这个问题了,是非常酷的.思考一下为什么我们会被这个问题一直困扰呢?我们的要求非常简单,我有一个模型,如下:public class TutorialModel { public string Title { get; set; } p...
OpenGL阴影贴图详解

OpenGL阴影贴图详解

既然模拟出了光照,那么也少不了阴影,阴影的产生是因为距离光线较近的物体遮挡了距离较远的物体,导致被遮挡的物体接受的光照少于遮挡物的,因此阴影的产生与否与物体到光源的位置有关系,静态物体的阴影可以用光照贴图来模拟,而动态阴影要用阴影锥或者阴影贴图实现,阴影锥会引入许多额外的顶点为管线带来负担,目前比较流行的阴影模拟方法是用阴影贴图,它的好处在于只是用纹理存储物体的深度信息而并不会引入额外顶点.要实现阴影贴图有以下几个步骤:首先开辟一块纹理缓存以便之后保存世界...
投影纹理映射(Projective Texture Mapping)

投影纹理映射(Projective Texture Mapping)

一、纹理投影映射简介投影纹理映射用于映射一个纹理到物体上,好比将幻灯片投影到墙上一样。投影纹理映射经常在一些阴影算法以及体绘制(Volume Rendering)算法中用到。严格的说,只要涉及到“纹理实时和空间顶点对应”,通常都要用到投影纹理映射技术。下面是一个纹理投影映射的实例效果图:图一 纹理投影映射效果图二、纹理投影映射优点1、将纹理与空间顶点实时对应,不需要预先在建模软件中生成纹理坐标。2、使用投影映射时,可以有效避免纹理扭...
OpenGL超级宝典学习笔记——Using OpenGL(一)

OpenGL超级宝典学习笔记——Using OpenGL(一)

OpenGL超级宝典 第4版 中文版PDF+英文版+源代码 见 http://www.linuxidc.com/Linux/2013-10/91413.htm第二章 使用OpenGL(一)OpenGL 的工作原理OpenGL是过程式的而非描述性的图形API。开发人员只须规定必要的步骤去实现显示的效果。这些步骤包含了许多OpenGL的命令。这些命令用于绘制许多的几何图元,例如点,线,多边形。OpenGL支持光照和阴影,纹理映射,混合,透明效果,动画,还有许多...
OpenGL超级宝典学习笔记——Using OpenGL(二)

OpenGL超级宝典学习笔记——Using OpenGL(二)

OpenGL数据类型 Technorati 标记: opengl函数命名约定<函数库前缀><命令名称><可选的参数个数><可选的参数类型>例子:glColor3f 代表是gl函数库里的 color命令,此命令有3个参数,参数类型是f平台独立性openGL没有创建窗口,处理按键输入,鼠标点击事件等函数。创建和管理窗口是操作系统本身应支持的功能。OpenGL是平台独立的图形硬件的抽象接口库。使用OpenGL画图1...
OpenGL超级宝典学习笔记——Using OpenGL(三)

OpenGL超级宝典学习笔记——Using OpenGL(三)

OpenGL状态机 绘制3D图形是一项复杂的任务。我们需要许多的属性,比如光照属性,材料属性,纹理等。如果我们在每次绘制图形的时候,都去设置这些属性,或者以参数的形式传进去。那工作量非常大,而且还易出错。所以OpenGL使用了状态模式,来管理这些属性,使得图形编程变得更简洁,容易。 光照属性,材料属性等等属性变量的集合就是管线的状态。状态机是一系列状态变量的集合的抽象模型。每个状态变量可以有不同的值,例如打开或关闭等。打开状态可以使用:void glEna...
OpenGL超级宝典学习笔记——空间绘图画点

OpenGL超级宝典学习笔记——空间绘图画点

3D概念像素,计算机显示器中的最小元素。3D画布,把可视区域看成一个3维的画布,可以用OpenGL命令在上面进行绘图。例如:glOrtho可以设置一个长方体的可视区域。谨记第二章说的:glOrtho是对之前的矩阵进行运算,所以一般都会在此函数之前调用glMatrixMode(GL_PROJECTION); glLoadIdentity();3D空间中的顶点我们可以通过glVertex这个函数来设置多个参数多个类型的点。例如:glVertex2f(0.0f,...
OpenGL超级宝典学习笔记——画三角形

OpenGL超级宝典学习笔记——画三角形

学习了画线的知识,我们可以使用GL_LINE_LOOP来画闭合的多边形。但是使用这种方式画出来的只有线框,多边形没有填充颜色。OpenGL支持绘制实心的多边形,并使用当前的颜色进行填充。三角形简单的三角形,需要指定三个顶点。 1: glBegin(GL_TRIANGLES); 2: glVertex2f(0.0f, 0.0f);// V0 3: glVertex2f(25.0f, 25.0f);// V1 4: glVertex2f(50.0f, 0.0f...
OpenGL超级宝典学习笔记——其他图元

OpenGL超级宝典学习笔记——其他图元

四边形OpenGL的GL_QUADS图元,可以指定4个点画出四边形。这些多边形具有顺时针环绕的方向。PS:四边形的四个角必须位于同一个平面GL_QUADS_STRIP图元可以画四边形带。通用多边形GL_POLYGONS可以使用指定的所有点绘制一个多边形。PS:这些点必须在一个平面上使用点画方式,填充多边形开启点画模式glEnagle(GL_POLYGON_STIPPLE);设置填充的模型glPolygonStipple(pBitmap);pBitmap指定...
OpenGL超级宝典学习笔记——其他缓冲区技巧

OpenGL超级宝典学习笔记——其他缓冲区技巧

使用目标缓冲区OpenGL并不是直接在屏幕上绘制图元的,而是先渲染到缓冲区中,然后再交换到屏幕上。颜色缓冲区有两个一个是前颜色缓冲区,一个是后颜色缓冲区。OpenGL默认是在后颜色缓冲区中绘制,然后再通过glutSwapBuffers(或者操作系统的缓冲区交换函数)交换前后缓冲区。我们也可以直接在前缓冲区中进行绘制,这样我们可以看到一些绘制的动画效果。使用前缓冲区的第一个方法是调用void glDrawBuffer(GLenum mode);mode参数为...
<< 3701 3702 3703 3704 3705 3706 3707 3708 3709 3710 >>