C语言实现文件的des加解密实例_第1页
C语言实现文件的des加解密实例_第2页
C语言实现文件的des加解密实例_第3页
C语言实现文件的des加解密实例_第4页
C语言实现文件的des加解密实例_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C语言实现文件的des加解密实例 c语言中的正则 ,d3.js画矢量图+可拖拽的实现思路 DOM2级事件处理程序跨浏览器兼容事件 ,exel导入/导出和csv文件导入、导出 ,Go http访问使用代理 golang进行socket通讯 ,hessian+hibernate 懒加载处理 ,HTML+CSS代码橙色导航菜单 html5 撞球游戏 / get 网络请求func Get(api string,params .Values)(rsbyte ,err error) var *. ,err=.Parse(api) if err!=nil fmt.Printf("解析错误:rn%v

2、",err) return nil,err /如果参数中有中文参数,这个方法会进行Encode/iOS KVO注册和监听方法 /C语言websocket编程 .RawQuery=params.Encode() resp,err:=http.Get(.String() if err!=nil fmt.Println("err:",err) return nil,err defer resp.Body.Close() return ioutil.ReadAll(resp.Body) / post 网络请求 ,params 是.Values类型func Post(api

3、 string, params .Values)(rsbyte,err error) resp,err:=http.PostForm(api, params) if err!=nil return nil ,err defer resp.Body.Close() return ioutil.ReadAll(resp.Body)/代码描述:基于GO的黄金数据接口调用代码实例/关联数据:黄金数据/css之before and after 代码 C#代码 using System;using System.Collections.Generic;using System.Linq;using Sys

4、tem.Text;using System.Net;using System.IO;using Xfrog.Net;using System.Diagnostics;using System.Web;void QEditor:setCurrentFile(const QString &fileName) m_currentFileName = fileName; ui->textEdit->document()->setModified(false);bool QEditor:maybeSave() if (ui->textEdit->document()

5、->isModified() QMessageBox:StandardButton ret; ret = QMessageBox:warning(this, tr("QEditor"), tr("The document has been modified.n" "Do you want to save your changes?"), QMessageBox:Save | QMessageBox:Discard | QMessageBox:Cancel); if (ret = QMessageBox:Save) return

6、save(); else if (ret = QMessageBox:Cancel) return false; return true;bool QEditor:savefile(const QString &fileName) QFile file(fileName); if (!file.open(QFile:WriteOnly | QFile:Text) QMessageBox:warning(this, tr("QEditor"), tr("Cannot write file %1:n%2.") .arg(fileName) .arg(

7、file.errorString(); return false; QTextStream out(&file); out << ui->textEdit->toPlainText(); setCurrentFile(fileName); ui->statusBar->showMessage(QString("%1 saved.").arg(fileName), 2000); return true;代码 Google Go代码 package mainimport ( "io/ioutil" "ne

8、t/http" "net/" "fmt" "encoding/json") /-/ 黄金数据调用示例代码 聚合数据/ 在线接口文档:www/docs/29/- const APPKEY = "*" /您申请的APPKEY func main() /1.上海黄金交易所 Request1() /2.上海期货交易所 Request2() /3.银行账户黄金 Request3() /1.上海黄金交易所func Request1() /请求地址 juhe :="web:8080/finance/gold/

9、shgold" /初始化参数 param:=.Values /配置请求参数,方法内部已处理encode问题,中文参数可以直接传参 param.Set("key",APPKEY) /APP Key param.Set("v","") /JSON格式版本(0或1)默认为0 /发送请求 data,err:=Get(juhe,param) if err!=nil fmt.Errorf("请求失败,错误信息:rn%v",err) else var netReturn mapstringinterface json.

10、Unmarshal(data,&netReturn) if netReturn"error_code".(float64)=0 fmt.Printf("接口返回result字段是:rn%v",netReturn"result") /2.上海期货交易所func Request2() /请求地址 juhe :="web:8080/finance/gold/shfuture" /初始化参数 param:=.Values /配置请求参数,方法内部已处理encode问题,中文参数可以直接传参 param.Set(&q

11、uot;key",APPKEY) /APP Key param.Set("v","") /JSON格式版本(0或1)默认为0 /发送请求 data,err:=Get(juhe,param) if err!=nil fmt.Errorf("请求失败,错误信息:rn%v",err) else var netReturn mapstringinterface json.Unmarshal(data,&netReturn) if netReturn"error_code".(float64)=0 fmt.

12、Printf("接口返回result字段是:rn%v",netReturn"result") /3.银行账户黄金func Request3() /请求地址 juhe :="web:8080/finance/gold/bankgold" /初始化参数 param:=.Values /配置请求参数,方法内部已处理encode问题,中文参数可以直接传参 param.Set("key",APPKEY) /APP Key /发送请求 data,err:=Get(juhe,param) if err!=nil fmt.Erro

13、rf("请求失败,错误信息:rn%v",err) else var netReturn mapstringinterface json.Unmarshal(data,&netReturn) if netReturn"error_code".(float64)=0 fmt.Printf("接口返回result字段是:rn%v",netReturn"result") /-/ 黄金数据调用示例代码 聚合数据/ 在线接口文档:www/docs/29/ 代码中JsonObject类下载地址:/- namespace

14、ConsoleAPI class Program static void Main(string args) string appkey = "*" /配置您申请的appkey /1.上海黄金交易所 string 1 = "web:8080/finance/gold/shgold" var parameters1 = new Dictionary<string, string>(); parameters1.Add("key", appkey);/你申请的key parameters1.Add("v"

15、, ""); /JSON格式版本(0或1)默认为0 string result1 = sendPost(1, parameters1, "get"); JsonObject newObj1 = new JsonObject(result1); String errorCode1 = newObj1"error_code".Value; if (errorCode1 = "0") Debug.WriteLine("成功"); Debug.WriteLine(newObj1); else /Debu

16、g.WriteLine("失败"); Debug.WriteLine(newObj1"error_code".Value+":"+newObj1"reason".Value); /2.上海期货交易所 string 2 = "web:8080/finance/gold/shfuture" var parameters2 = new Dictionary<string, string>(); parameters2.Add("key", appkey);/你申请的ke

17、y parameters2.Add("v" , ""); /JSON格式版本(0或1)默认为0 string result2 = sendPost(2, parameters2, "get"); JsonObject newObj2 = new JsonObject(result2); String errorCode2 = newObj2"error_code".Value; if (errorCode2 = "0") Debug.WriteLine("成功"); Debu

18、g.WriteLine(newObj2); else /Debug.WriteLine("失败"); Debug.WriteLine(newObj2"error_code".Value+":"+newObj2"reason".Value); /3.银行账户黄金 string 3 = "web:8080/finance/gold/bankgold" var parameters3 = new Dictionary<string, string>(); parameters3.Add(&

19、quot;key", appkey);/你申请的key string result3 = sendPost(3, parameters3, "get"); JsonObject newObj3 = new JsonObject(result3); String errorCode3 = newObj3"error_code".Value; if (errorCode3 = "0") Debug.WriteLine("成功"); Debug.WriteLine(newObj3); else /Debug.W

20、riteLine("失败"); Debug.WriteLine(newObj3"error_code".Value+":"+newObj3"reason".Value); / <summary> / Http (GET/POST) / </summary> / <param name="">请求</param> / <param name="parameters">请求参数</param> / <p

21、aram name="method">请求方法</param> / <returns>响应内容</returns> static string sendPost(string , IDictionary<string, string> parameters, string method) if (method.ToLower() = "post") HttpWebRequest req = null; HttpWebResponse rsp = null; System.IO.Stream reqSt

22、ream = null; try req = (HttpWebRequest)WebRequest.Create(); req.Method = method; req.KeepAlive = false; req.ProtocolVersion = HttpVersion.Version10; req.Timeout = 5000; req.ContentType = "application/x-www-form-encoded;charset=utf-8" byte postData = Encoding.UTF8.GetBytes(BuildQuery(parame

23、ters, "utf8"); reqStream = req.GetRequestStream(); reqStream.Write(postData, 0, postData.Length); rsp = (HttpWebResponse)req.GetResponse(); Encoding encoding = Encoding.GetEncoding(rsp.CharacterSet); return GetResponseAsString(rsp, encoding); catch (Exception ex) return ex.Message; finally

24、 if (reqStream != null) reqStream.Close(); if (rsp != null) rsp.Close(); else /创建请求 HttpWebRequest request = (HttpWebRequest)WebRequest.Create( + "?" + BuildQuery(parameters, "utf8"); /GET请求 request.Method = "GET" request.ReadWriteTimeout = 5000; request.ContentType = &

25、quot;text/html;charset=UTF-8" HttpWebResponse response = (HttpWebResponse)request.GetResponse(); Stream myResponseStream = response.GetResponseStream(); StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("utf-8"); /返回内容 string retString = myStreamRea

26、der.ReadToEnd(); return retString; / <summary> / 组装普通文本请求参数。 / </summary> / <param name="parameters">Key-Value形式请求参数字典</param> / <returns>编码后的请求数据</returns> static string BuildQuery(IDictionary<string, string> parameters, string encode) StringBuild

27、er postData = new StringBuilder(); bool hasParam = false; IEnumerator<KeyValuePair<string, string>> dem = parameters.GetEnumerator(); while (dem.MoveNext() string name = dem.Current.Key; string value = dem.Current.Value; / 忽略参数名或参数值为空的参数 if (!string.IsNullOrEmpty(name)/&& !string

28、.IsNullOrEmpty(value) if (hasParam) postData.Append("&"); postData.Append(name); postData.Append("="); if (encode = "gb2312") postData.Append(HttpUtility.Encode(value, Encoding.GetEncoding("gb2312"); else if (encode = "utf8") postData.Append(Http

29、Utility.Encode(value, Encoding.UTF8); else postData.Append(value); hasParam = true; return postData.ToString(); / <summary> / 把响应流转换为文本。 / </summary> / <param name="rsp">响应流对象</param> / <param name="encoding">编码方式</param> / <returns>响应文本&

30、lt;/returns> static string GetResponseAsString(HttpWebResponse rsp, Encoding encoding) System.IO.Stream stream = null; StreamReader reader = null; try / 以字符流的方式读取HTTP响应 stream = rsp.GetResponseStream(); reader = new StreamReader(stream, encoding); return reader.ReadToEnd(); finally / 释放资源 if (rea

31、der != null) reader.Close(); if (stream != null) stream.Close(); if (rsp != null) rsp.Close(); 代码 PHP代码 /* * c远程传输工具 */public function post_c($,$body,$header,$type='POST') $ch = c_init(); c_setopt($ch,COPT_,$); c_setopt($ch,COPT_HEADER,0);/0只要正文 c_setopt($ch,COPT_TIMEOUT,5);/设置超时时间 c_setopt(

32、$ch,COPT_CONNECTTIMEOUT,5); /将c_exec()获取的信息以文件流的形式返回,而不是直接输出。 c_setopt($ch,COPT_RETURNTRANSFER,1); /增加header头信息 / array_push($header,'Accept:application/json'); / array_push($header,'Content-Type:application/json'); / array_push($header,'http:multipart/form-data'); if(count($

33、body)>0) c_setopt($ch,COPT_POSTFIELDS,$body); if(count($header)>0) c_setopt($ch,COPT_HTTPHEADER,$header); /设置上传文件相关 c_setopt($ch,COPT_FOLLOWLOCATION,true); c_setopt($ch,COPT_MAXREDIRS,3);/递归 c_setopt($ch,COPT_SSL_VERIFYPEER,false);/ 对认证证书来源的检查 c_setopt($ch,COPT_SSL_VERIFYHOST,0);/ 从证书中检查SSL加密算

34、法 switch ($type) case 'GET': c_setopt($ch,COPT_HTTPGET,1); break; case 'POST': c_setopt($ch,COPT_POST,1); break; case 'PUT': c_setopt($ch,COPT_CUSTOMREQUEST,'PUT'); break; case 'DELETE': c_setopt($ch,COPT_CUSTOMREQUEST,'DELETE'); break; /上传文件相关设置 c_set

35、opt($ch,COPT_ENCODING,'gzip'); c_setopt($ch,COPT_USERAGENT,'SSTS Browser/1.0'); c_setopt($ch,COPT_USERAGENT,'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0)');/ 模拟用户使用的浏览器 if(c_errno($ch) return c_error($ch); $content = c_exec($ch); c_close($ch);/关闭c资源,并且释放系统资

36、源 $result = json_decode($content,true); if(!empty($result) return $result; else return $content; 代码 C/C+代码 /*编译指令$ /opt/sybase/OCS-16_0/bin/cpre64 -m teststu.cp$ cc -m64 -g -DSYB_LP64 -I. -I/opt/sybase/OCS-16_0/include teststu.c /opt/sybase/OCS-16_0/include/sybesql.c -L/opt/sybase/OCS-16_0/lib -lsyb

37、ct64 -lsybtcl64 -lsybcs64 -lsybcomn64 -lsybintl64 -lsybunic64 -rdynamic -ldl -lnsl -lm -o teststu*/#include <stdio.h> /*建立通讯区域*/EXEC SQL INCLUDE SQLCA;/* * These tokens must be declared in a declare section* because they are used in declare sections below.*/EXEC SQL BEGIN DECLARE SECTION;#defi

38、ne TYPESIZE 13#define TIDSIZE 6EXEC SQL END DECLARE SECTION; #define EOLN '0'/* * Forward declarations of the error and message handlers and* other subroutines called from main().*/void error_handler();void warning_handler(); intmain(int argc, char *argv)/*声明宿主变量*/ EXEC SQL BEGIN DECLARE SEC

39、TION; /* storage for login name and password. */ char username30; char sname30; char password30; char server30; EXEC SQL END DECLARE SECTION;/*错误处理*/ EXEC SQL WHENEVER SQLERROR CALL error_handler(); EXEC SQL WHENEVER SQLWARNING CALL warning_handler(); EXEC SQL WHENEVER NOT FOUND CONTINUE;/*连接到 SQL S

40、ERVER 服务器*/ /* * Copy the user name and password defined in sybsqlex.h to * the variables declared for them in the declare section. */ strcpy(username, "mymotif"); strcpy(password, "wxwpxh"); strcpy(server, "MYMOTIFVOSTRO145480"); EXEC SQL CONNECT :username IDENTIFIED B

41、Y :password using :server; EXEC SQL USE testdb; EXEC SQL DECLARE c1 CURSOR FOR SELECT SNAME FROM STUDENT; EXEC SQL OPEN c1; printf("name in table studentn"); do EXEC SQL FETCH c1 INTO :sname; if (sqlca.sqlcode != 0) break; printf( "student name = %sn", sname ); while ( 1 ); EXEC

42、SQL CLOSE c1; return(0); /*错误处理程序*/* void error_handler()* * Displays error codes and numbers from the SQLCA and exits with* an ERREXIT status. */voiderror_handler(void) fprintf(stderr, "n* SQLCODE=(%ld)", sqlca.sqlcode); if (sqlca.sqlerrm.sqlerrml) fprintf(stderr, "n* ASE Error "

43、;); fprintf(stderr, "n* %s", sqlca.sqlerrm.sqlerrmc); fprintf(stderr, "nn"); exit(-1); /* * void warning_handler()* * Displays warning messages.*/voidwarning_handler(void) if (sqlca.sqlwarn1 = 'W') fprintf(stderr, "n* Data truncated.n"); if (sqlca.sqlwarn3 = 

44、9;W') fprintf(stderr, "n* Insufficient host variables to store results.n"); return;代码 Log4j配置 <!- 日志jar -> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> </dependency>导入这个包,会引入下面两个jar<!-spring 的基本jar包 ->

45、<dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactId> </dependency> <!- commons-login是必须的,而且没有依赖,是独立的包 -> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging-api<

46、;/artifactId> <version>1.1</version> </dependency><dependency><!- transactionManager实务管理的时候,需要这个jar包 -> <groupId>org.springframework</groupId> <artifactId>spring-orm</artifactId></dependency><dependency> <!-当spring-config.xml文件中配置<aop:aspect >需要加入此包 -> <groupId>org.aspectj</groupId> &l

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论