分隔符

什么是multipart/form-data请求

北城以北 提交于 2019-11-30 02:57:52
根据http/1.1 rfc 2616的协议规定,我们的请求方式只有OPTIONS、GET、HEAD、POST、PUT、DELETE、TRACE等,那为为何我们还会有multipart/form-data请求之说呢?这就要从头来说了。 http协议规定以ASCII码传输,建立在tcp,ip协议智商的引用规范,规范内容把http请求分成3个部分,状态行,请求头,请求体。所有的方法,实现都是围绕如何使用和组织这三部分来完成了,万变不离其宗,http的知识大家可以问度娘。 既然上面请求方式里面没有multipart/form-data那这个请求又是怎么回事呢,其实是一回事,multipart/form-data也是在post基础上演变而来的,具体如下: 1.multipart/form-data的基础方式是post,也就是说通过post组合方式来实现的。 2.multipart/form-data于post方法的不同之处在于请求头和请求体。 3.multipart/form-data的请求头必须包含一个特殊的头信息:Content-Type,其值也必须为multipart/form-data,同时还需要规定一个内容分割用于分割请求提中多个post的内容,如文件内容和文本内容是需要分隔开来的,不然接收方就无法解析和还原这个文件了,具体的头信息如下: Content-Type:

菜鸟学python- str 1

ⅰ亾dé卋堺 提交于 2019-11-30 02:49:17
刚开始学习python ,学习了str的一些重要用法,按我自己理解分享给大家。 1, join(self, iterable) #將字符串中的每一個元素按照指定分隔符進行拼接 test = "你像大海一样广阔" #將字符串中的每一個元素按照指定分隔符進行拼接 print(test) t = '_' v = t.join(test) #v = "_".join(test) print(v) 2, split(self, sep) #分隔字符串,不保留分隔符, sep 代表分到每几个分隔符 test = 'testasdsssffffdd' v = test.split('s',3) # v = test.partition('s') print(v) 3, strip(self, chars=None) # 去全部去空格 # 去掉左/t,/n ,/t,/n及全部去/t /n # 移除指定字符,在willass 中搜索 wiaaaffffll,有就去掉 test = "willass" v = test.strip("wiaaaffffll") print(v) 来源: https://www.cnblogs.com/willchu/p/11548150.html

DevExpress 控件中设置分隔符

蓝咒 提交于 2019-11-30 02:22:42
原文: DevExpress 控件中设置分隔符 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接: https://blog.csdn.net/ghs79/article/details/50234189 在Delphi的标准菜单上设置分隔符是一件很简单的事,无论是设计期还是运行期动态生。但是DEV控件却不好使用,下面简单说说如何使用。 1、设计期:右键店要设置分隔符的按钮,有‘begin a Group’,点一下。 2、运行期:dxBarLargeButton3.Links[0].BeginGroup := True; //增加分隔符。会在这个按钮前添加一条分隔线。 运行期动态生成的核心代码如下: var DXTab: TdxRibbonTab; DxBar: TdxBar; //Dxbtn: TdxBarButton; Dxbtn: TdxBarItemLink; DxTabGrp: TdxRibbonTabGroup; begin DXTab := dxRibbon1.Tabs.Add; DXTab.Caption := tmpGroupStr; DxBar := dxBarManager1.AddToolBar(); DxBar.Caption := tmpGroupStr; DXTab.AddToolBar

初识Hive

♀尐吖头ヾ 提交于 2019-11-30 00:56:28
一、Hive基本概念 1.1、Hive简介 什么是Hive Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能(HQL)。 其本质是将SQL转换为MapReduce的任务进行运算,底层由HDFS来提供数据的存储,hive可以理解为一个将SQL转换为MapReduce的任务的工具。 为什么使用Hive 直接使用hadoop所面临的问题 人员学习成本太高 项目周期要求太短 MapReduce实现复杂查询逻辑开发难度太大 为什么要使用Hive 操作接口采用类SQL语法,提供快速开发的能力。 避免了去写MapReduce,减少开发人员的学习成本。 功能扩展很方便。 Hive的特点 可扩展 Hive可以自由的扩展集群的规模,一般情况下不需要重启服务。 延展性 Hive支持用户自定义函数,用户可以根据自己的需求来实现自己的函数。 容错 良好的容错性,节点出现问题SQL仍可完成执行。 1.2、 Hive架构 架构图 基本组成 用户接口:包括CLI、JDBC/ODBC、WebGUI。其中,CLI(command line interface)为shell命令行;JDBC/ODBC是Hive的JAVA实现,与传统数据库JDBC类似;WebGUI是通过浏览器访问Hive。 元数据存储:通常是存储在关系数据库如mysql/derby中

Perl内置特殊变量

瘦欲@ 提交于 2019-11-29 22:56:13
一、 正则表达式 特殊 变量: 1、 $n   :包含上次模式匹配的第n个子串 2、 $&    :前一次成功模式匹配的字符串 3、 $`   :前次匹配成功的子串之前的内容 4、 $’    :前次匹配成功的子串之后的内容 5、 $+   :前一次使用括号的模式匹配的字符串. 二、 文件句柄 特殊 变量: 1、 $|   :如果设置为零,在每次调用函数write或print后,自动调用函数fflush,将所写内容写回文件 2、 $%   :当前输出页号 3、 $=   :当前每页长度 4、 $-   :当前页剩余的行数 5、 $~   :当前报表输出格式的名称.默认值是文件句柄名. 6、 $^   :当前报表输出表头格式的名称.默认值是带后缀”_TOP”的文件句柄名. 三、 全局特殊 变量: 1、 $_ 和 $ARG   :默认输入和模式匹配内容.如果不指定接收输入的变量或执行模式匹配的字符串 2、 $. 和 $NR   :前一次读的文件句柄的当前行号 3、 $/ 和 $RS   :输入记录分隔符,默认是新行字符.如用undef这个变量,将读到文件结尾 4、 $, 的 $OFS   :输出域分隔符. 5、 $\ 和 $ORS   :输出记录分隔符 6、 $:    :断行字符,默认是”\n-”三个字符 7、 $!   :这个变量的数字值是errno的值

Hadoop Streaming 实战: 输出文件分割

寵の児 提交于 2019-11-29 13:49:06
我们知道,Hadoop streaming框架默认情况下会以'/t’作为分隔符,将每行第一个'/t’之前的部分作为key,其余内容作为value,如果没有'/t’分隔符,则整行作为key;这个 key /t value 对又作为reduce的输入。hadoop 提供配置供用户自主设置分隔符。 -D stream.map.output.field.separator :设置map输出中key和value的分隔符 -D stream.num.map.output.key.fields : 设置map程序分隔符的位置,该位置之前的部分作为key,之后的部分作为value -D map.output.key.field.separator : 设置map输出中key内部的分割符 -D num.key.fields.for.partition : 指定分桶时,key按照分隔符切割后,其中用于分桶key所占的列数(配合-partitioner org.apache.hadoop.mapred.lib.KeyFieldBasedPartitioner 使用) -D stream.reduce.output.field.separator :设置reduce输出中key和value的分隔符 -D stream.num.reduce.output.key.fields

strtok_r使用

北慕城南 提交于 2019-11-29 13:38:01
strtok函数 原型: char * strtok(char *s, const char *delim); 描述:分解字符串为一组字符串。s为要分解的字符串,delim为分隔符字符串。 当strtok()在参数s 的字符串中发现到参数delim 的分割字符时则会将该字符改为\0 字符。在第一次调用时,strtok()必需给予参数s 字符串,往后的调用则将参数s 设置成NULL。每次调用成功则返回下一个分割后的字符串指针。 输入:char *s -要分解的字符串,strtok在调用的时候会忽略起始位置开始的分隔符 。 const char *delim -分隔符字符串 输出:char* -提取到子串时,返回值是提取到的子串的指针,该指针指向的是子串在源字符串中的起始位置, 子串末尾的下一个字符提取前是分隔符,提取后被修改成了'\0'。 没有提取到子串,即源字符串中没有分隔符字符串的分隔符,返回的是源字符串的首地址。 分解子串时,如果分解已指向源字符串的尾部时,无法再继续分解,此时返回NULL。 strtok实现使用了静态变量,所以该函数是不可重入的,线程安全的函数是strtok_r。 strtok_r函数 原型: char *strtok_r(char *s, const char *delim, char **saveptr); 描述:strtok函数的可重入版本,char *

bulk load关于分隔符的问题

喜欢而已 提交于 2019-11-29 09:59:34
在查看bulk load的源码了解到,其默认的分隔符为\t,也就是说如果数据是tab键分割的,就不需要指定分隔符了,如果需要换成其它分割符,在执行时加上-Dimporttsv.separator=",",则变成了以","分割。 前两天,无意间使用bulk load导入数据,导入的数据是以“\t”分割的,我在命令中指定了-Dimporttsv.separator="\t",怪事就出现了,报出异常: java.lang.IllegalArgumentException: TsvParser only supports single-byte separators at com.google.common.base.Preconditions.checkArgument(Preconditions.java:88) at org.apache.hadoop.hbase.mapreduce.ImportTsv$TsvParser.<init>(ImportTsv.java:88) at org.apache.hadoop.hbase.mapreduce.ImportTsv$TsvImporter.setup(ImportTsv.java:218) at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:142) at org.apache

sqli-labs的less11-12

大憨熊 提交于 2019-11-29 06:51:57
less11;   明显和前面不同了,需要输入账户名和密码了,那么,很明显,这并不是一个get方式了。   随意输入一个123,123,明显返回错误了。   用burpsuite来抓下包,代理什么的都不在这配置了。   界面输入123,123提交。抓包获得参数。      在得到参数后,直接将参数写入的sqlmap的data段。      系统就把这个请求变成post方式了,测试成功,得到结果,      顺带提一笔,如果遇到分隔符不是&的,需要重新制定分隔符, --param-del="需要的分隔符",    less12:   和less11类似,只是注入点不同了。    来源: https://www.cnblogs.com/gg472074534/p/11341882.html

awk简单用法

白昼怎懂夜的黑 提交于 2019-11-29 04:55:20
简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。 awk有3个不同版本: awk、nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本。 awk其名称得自于它的创始人 Alfred Aho 、Peter Weinberger 和 Brian Kernighan 姓氏的首个字母。实际上 AWK 的确拥有自己的语言: AWK 程序设计语言 , 三位创建者已将它正式定义为“样式扫描和处理语言”。它允许您创建简短的程序,这些程序读取输入文件、为数据排序、处理数据、对输入执行计算以及生成报表,还有无数其他的功能。 使用方法 awk [options] '{pattern + action}' {filenames} 尽管操作可能会很复杂,但语法总是这样,其中 pattern 表示 AWK 在数据中查找的内容,而 action 是在找到匹配内容时所执行的一系列命令。花括号({})不需要在程序中始终出现,但它们用于根据特定的模式对一系列指令进行分组。 pattern就是要表示的正则表达式,用斜杠括起来。 awk语言的最基本功能是在文件或者字符串中基于指定规则浏览和抽取信息,awk抽取信息后