昨天写到<使用多字节字符集的跨平台(PC.Android.IOS.WP)编码/解码方法>中提到服务端使用std::string处理字符串,std::string对多字节字符集支持并不是很完善,std::string中的函数没有对多字节字符集进行直接的支持. 例如直接调用std::string的substr函数,就会导致某些情况下截取的字符串尾部产生非法字符. GB系列多字节字符集基础知识: VC环境下工程设置为多字节字符集,默认使用的是GBK编码,GB2312.GBK.GB18030,这3个都…
Oracle 11g RAC环境下Private IP修改方法及异常处理 Oracle 11g RAC环境下Private IP修改方法及异常处理 一. 修改方法 1. 确认所有节点CRS服务以启动 # olsnodes -s -n –i host1 1 host1-vip Active host2 2 host2-vip Active 2. 修改Private IP配置信息 如果之前只有一个私有网卡,则直接删除时会报错,如:PRIF-31: Failed to delete the speci…
原文:PHP环境下Memcache的使用方法 原文地址:http://www.2cto.com/kf/201503/384967.html 如今互联网崛起的时代,各大网站都面临着一个大数据流问题,怎么提高网站访问速度,减少对数据库的操作:作为PHP开发人员,我们一般能想到的方法有页面静态化处理.防盗链.CDN内容分发加速访问.mysql数据库优化建立索引.架设apache服务器集群().还有就是现在流行的各种分布式缓存技术:如memcached/redis: 1.什么是Memcached? a.…
分布式环境下的id生成方法   前几天研究数据库分表分库的问题,其中有一个关键的地方就是生成唯一键的问题,假如数据表有1亿条数据,而且还在不断的增加,这里我们就需要考虑到分表分库,假设我们采用Hash或者是用户取模求余的方法将这个表拆分成10个表,每个表的结构相同,其中有一个主键id,那么10个表中的id需要唯一不同,在单表的时候,使用数据表自增长是没有问题的.当分成10个表后,就无法用到数据库自增长了. 当到这里的时候突然发现oracle数据库的序列真是好东西,在刚刚接触的时候还很郁闷这种设计…
CDN 环境下获取用户IP方法 1 cdn 自定义header头的X-Real-IP,在后端使用$http_x_real_ip获得 proxy_set_header X-Real-IP $remote_addr 这种方法简单有效准确. 2 cdn一般都会使用自定义字段X-Forwarded-For记录代理过程信息 例如: 假设加上cdn代理在内的所有代理后的$http_x_forwarded_for为: 192.168.247.1, 192.168.247.131, 192.168.247.13…
转载:http://www.xjishu.com/zhuanli/55/201710103925.html 本发明涉及云计算技术领域,特别是涉及一种云环境下SaaS软件部署方法及装置. 背景技术: 随着云计算技术的快速发展,SaaS(Software-as-a-Service,软件即服务)模式逐渐兴起.SaaS模式是云计算在应用层提供的服务.在SaaS模式下,客户不需要购买完整的软件系统,也不需要配备相应的硬件系统和维护人员,只需要通过互联网,按需租用应用软件即可,这对成本预算有限.技术条件不足…
在Visual Studio开发环境下,想必F12我们都很熟悉了,有没有用过“查看所有引用”呢? 尤其是在一个解决方案中,包含了很多项目,彼此相互的调用是很常见的,例如三层架构, BLL调用DAL,DAL调用Model,Model又调用DBUtility,每层中可能有有相同名字的方法,我们可以使用查询来找到想要的方法,但是不精确, 这里我们就可以用到“查看所有引用”,但是不知道有没有人遇到过,当在方法上,右键->查找所有引用,这时查找符号结果区却提示出,"搜索未找到结果"这一提示…
ID即标示符,在某个搜索域内能唯一标示其中某个对象.在关系型数据库中每个表都需要定义一个主键来唯一标示一条记录.为了方便一般都会使用一个auto_increment属性的整形数做为ID.因为数据库本身能保证这个数是在这个表范围内一直累加的,所以任何两条记录不会有相同的ID值,包括已经删除的记录.可是一旦表大到一定程度,要跨机器分表的时候,那么就不能再依靠这个auto_increment字段唯一表示一条记录了.因为此时的搜索域已经扩大到多个机器,而每台机器的auto_increment都是独立增长…
作者:Jack47 转载请保留作者和原文出处 欢迎关注我的微信公众账号程序员杰克,两边的文章会同步,也可以添加我的RSS订阅源. 本文介绍在Kubernetes环境下的调试方法,希望对读者有用.如果关心Docker环境里的调试方法,可以看我的这篇文章:Useful commands for docker beginners 启动单个容器 不使用Pod或Replication Controller,启动单个容器: $ kubectl run webserver --image=nginx 想更改镜…
本文为作者原创,转载请注明出处:https://www.cnblogs.com/leisure_chn/p/10693247.html 本文以嵌入式 Linux 环境下的 gdb 使用为例,记录交叉编译过程中一个比较关键的问题:configure 过程中 --build, --host, --target 参数的区别. 1. 交叉编译 交叉编译是指在一种平台上编译出运行于另一种平台的程序.这里的平台,涉及硬件和软件两个部分,硬件平台指 CPU 架构,软件平台指操作系统.交叉编译主要针对嵌入式领域…
Apache的环境非常简单.可以点击创建 .htaccess就可以了 Nginx环境下设置伪静态,并没有那个一键创建的按钮.只看到了这样的一个提示. 别的环境未测试.宝塔面板中 反正我是没找到. 宝塔面板的修改方法: 宝塔的每个网站都有一个对应的 conf文件.直接修改那个文件即可 linux下目录为:www\server\panel\vhost\nginx\你的域名.conf window下目录为:  宝塔安装目录\Nginx\conf\vhost\你的域名.conf 别的环境可以按照以上规律…
**************************** 就是从数据库中取出来时,在存入linux的文件里时,在字符流时制定编码格式.代码如下: FileOutputStream fos=new FileOutputStream(new File(filePath),true); Writer ut=new OutputStreamWriter(fos,"UTF-8"); out.write(s); out.write("\n"); out.flush(); fos…
前提:Windows环境tomcat是以catalina.bat方式而非Windows服务形式启动(两者所使用的JAVA配置及JVM参数会有差异). 服务器段设置 方法1:修改CATALINA_OPTS 修改 catalina.bat文件,添加:Set  "CATALINA_OPTS=-Xdebug  -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n" 参数说明: -Xdebug                 …
1.首先下载memcached-1.2.1-win32.zip 下载地址http://download.csdn.net/detail/u011986449/8110579 这下是windows下的版本号,安装要在命令行下安装 解压室C盘或其它盘都能够,如我的是C盘memcache121文件夹.然后进入cmd命令行,例如以下: Microsoft Windows [版本号5.2.3790] (C) 版权全部 1985-2003 Microsoft Corp. C:\Documents andSe…
linux安装java步骤 方式一:yum方式下载安装 1.查找java相关的列表 yum -y list java* 或者 yum search jdk 2.安装jdk yum install java-1.8.0-openjdk.x86_64 3.完成安装后验证 java -version 4.通过yum安装的默认路径为:/usr/lib/jvm 5.将jdk的安装路径加入到JAVA_HOME vi /etc/profile 在文件最后加入: #set java environment JA…
由于工作原因,在域环境中但是还不是域用户,怎么设置代理也不能使用邮件客户端,幸亏老大给一软件,如下图 安装超级简单,而且软件很小,安装完后重启,基本不用设置就可以使用,前提是你的邮箱客户端要设置代理服务器.…
1.action写法 public class RegisterAction extends ActionSupport { private InputStream inputStream; /** * 方法名随意,在struts.xml中配置好就可以 */ public String execute() { String str; // 想要返回的变量 // 赋值,根据需要自行替换代码即可 str = "这是个演示"; try { inputStream = new ByteArra…
其实这个是个很常见的问题,写下来做纪念吧.说明:而在11GR2后EXPDP 和 IMDP的WORKER进程在设置parallel参数时会在多个INSTANCE启动,所以DIRECTORY必须在共享磁盘上,如果没有设置共享磁盘需要指定cluster=no 来防止报错. 今晚是个苦逼的日子明天需要导数据做ogg同步,因为数据量比较大,所以晚上导出,明天白天上班再导入到其它数据库,因此选用expdp做同步工具,可以参考如下博文:https://blog.51cto.com/1937519/217736…
将压缩文件解压到一个目录中,该目录结构如下: 安装步骤(摘自网络): 1.进入数据库解压目录,双击其中的“setup.exe”文件,稍等片刻出现如下“配置安全更新“界面,取消“我希望通过My Oracle Support接受安全更新”,单击“下一步”,在随后出现的”未提供电子邮件“警告对话框中点”是“. 2.在“选择安装选项”窗口中,选择“创建和配置数据库”,单击“下一步”. 3.在“系统类”窗口中,选择“桌面类”,单击“下一步”. 4.在“典型安装配置”窗口中,选择安装Oracle的基目录,数…
Linux 安装python3.7.0   我这里使用的时centos7-mini,centos系统本身默认安装有python2.x,版本x根据不同版本系统有所不同,可通过 python --V 或 python --version 查看系统自带的python版本 有一些系统命令时需要用到python2,不能卸载 1.安装依赖包 1)首先安装gcc编译器,gcc有些系统版本已经默认安装,通过  gcc --version  查看,没安装的先安装gcc,yum -y install gcc 2)安…
MFC中CString 与 std::string 相互转化 CString实际是CStringT, 也就是模板类, 在UNICODE环境下,实际是CStringW, 在多字符集环境下,实际是CStringA std::string就是多字符集的. UNICODE环境下 CStringW-->std::string CString实际是CStringW,要转换成多字符集,需进行转码.使用WideCharToMultiByte 转换成多字符集,然后再构造std::string std::strin…
1.             概念 Scott Meyers在<More Effective C++>中举了个例子,不知你是否还记得?在你还在上学的时候,你的父母要你不要看电视,而去复习功课,于是你把自己关在房间里,做出一副正在复习功课的样子,其实你在干着别的诸如给班上的某位女生写情书之类的事,而一旦你的父母出来在你房间要检查你是否在复习时,你才真正捡起课本看书.这就是“拖延战术”,直到你非要做的时候才去做. 当然,这种事情在现实生活中时往往会出事,但其在编程世界中摇身一变,就成为了最有用的技…
转自:http://zxdflyer.blog.163.com/blog/static/25664262201322510217495/ C++标准模板库std使用广泛.该库中处理字符串的对象为std::string,该对象常用来对字符串分割.替换.提取子字符串等操作.但是由于该库全部使用模板编程,而且函数形式也比较复杂,在使用时经常出现问题.为了便于重用,根据在实际使用时常用到的功能,我将相应的代码集成到了一个文件中,代码如下: /*******************************…
c++11开始支持多线程编程,相关的类和函数封装在标准库头文件<thread>中,而c++多线程编程很重要的一点就是当用户创建一个std::thread对象,关联了可调用对象后,需要在该thread对象销毁前调用join()或detach().其中join()函数用于结合线程,确保在创建该thread对象的函数退出前,该线程执行完毕;而detach()函数则表示分离线程,即让线程在后台运行,线程的所有权和控制权交给c++运行时库.若thread对象销毁前没有调用join()或detach(),…
在win环境下,有许多方法可以对文件进行读写操作,如MFC 中的CFile类,及一些开源的项目如QT中的QFile.开源的好得是可以多平台,而MFC只是微软自家的东西,对于想写跨平台的人,最好不用MFC. 最近在写开发时,突然碰到了一个问题,也是与读写文件有关,不过用的是C的方法,而不是C++,问题的表现是用C 中的Open创建的文件都是只读的,平常很少用这个方法所在网上找了下,才发现这个函数还有一个权限参数,默认是只读.现将C方式下的两种文件操作归纳下 open比起fopen是更低级别的IO操…
参考: std::string to char* C++ 将 std::string 转换为 char* 目前没有直接进行转换的方法.必须通过string对象的c_str()方法,获取C-style的字符串: std::string str = "string"; const char *cstr = str.c_str(); 注意,该方法返回的类型为const char *,不能直接修改返回的C-style字符串,若需要修改则必须先拷贝该字符串: std::string str =…
1.什么是tensorflow TensorFlow是谷歌基于DistBelief进行研发的第二代人工智能学习系统,其命名来源于本身的运行原理.Tensor(张量)意味着N维数组,Flow(流)意味着基于数据流图的计算,TensorFlow为张量从流图的一端流动到另一端计算过程.TensorFlow是将复杂的数据结构传输至人工智能神经网中进行分析和处理过程的系统. tensorflow类型分为两种, 你必须选择其一来进行安装: 仅支持 CPU 的 TensorFlow.如果您的系统没有 NVID…
最近有个小工具需要将DMS系统中随机文件名替换为原始文件名,当导出原始文件名到csv文件中,用小 工具读取然后rename时,发现在eclipse环境下运行正常,简繁中文名称也正常:但放到cmd中执行,发现 中文文件名乱码.程序中rename的来源字符串未做任何改变,取自csv中:csv中显示正常. 经过一番测试,无法在程序中修改文件名来达到正常:后来想到既然eclipse正常,那应该和程序无关,和环境有关, 于是找到:指定Java程序运行环境的字符集 ,这个参数添加后立刻正常. java  -…
//宽字符转多字节 std::string W2A(const std::wstring& utf8) { int buffSize = WideCharToMultiByte(CP_ACP, NULL, utf8.c_str(), -1, NULL, NULL, NULL, FALSE); char *gbk = new char[buffSize+1]; memset(gbk, 0, buffSize + 1); WideCharToMultiByte(CP_ACP, NULL, utf8.…
2011-05-16 00:10 1166人阅读 评论(0) 收藏 举报 mfcdelete Unicode下 CString转TCHAR TCHAR* szMsg = new TCHAR[wcslen(strAdbCmd)]; szMsg = strAdbCmd.GetBuffer(strAdbCmd.GetLength()); strAdbCmd.ReleaseBuffer(); 用完了别忘了delete []szMsg; CString转 char* char * charP; CStri…