Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
夜猫逐梦
1024程序员开源挑战赛
提交
2732cf89
1
1024程序员开源挑战赛
项目概览
夜猫逐梦
/
1024程序员开源挑战赛
与 Fork 源项目一致
Fork自
GitCode / 1024程序员开源挑战赛(10.23-11.14)
通知
3
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
1
1024程序员开源挑战赛
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
2732cf89
编写于
6月 09, 2022
作者:
P
pc-ls
提交者:
ninecents
10月 23, 2022
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
【高效】 添加 yeahmao/hexConvert 标签,将x64dbg汇编转换为字符串和字节数组,提高编码速度
上级
40b49b1e
变更
8
隐藏空白更改
内联
并排
Showing
8 changed file
with
129 addition
and
2 deletion
+129
-2
README.md
README.md
+5
-0
src/config.js
src/config.js
+4
-0
src/i18n/locales/en/hexString.i18n.json5
src/i18n/locales/en/hexString.i18n.json5
+1
-1
src/i18n/locales/en/main.i18n.json5
src/i18n/locales/en/main.i18n.json5
+2
-0
src/i18n/locales/zh_CN/main.i18n.json5
src/i18n/locales/zh_CN/main.i18n.json5
+2
-0
src/tool.router.js
src/tool.router.js
+4
-0
src/tool.vue
src/tool.vue
+5
-1
src/views/yeahmao/hexConvert.vue
src/views/yeahmao/hexConvert.vue
+106
-0
未找到文件。
README.md
浏览文件 @
2732cf89
...
...
@@ -75,3 +75,8 @@ npm run build -adapter=[chrome|edge|utools|firefox|web]
| ARM/HEX |
`互转`
|×|
| Bcrypt |
`加密`
,
`验证`
|√|
| IP网络计算器 |
`子网掩码各个进制表示换算,IP地址进制表示换算`
|√|
## 功能列表-yeahmao
| 功能 | 说明 |离线使用|
|--------------|-------------------------------------------------------------------------------------------------------------------------------|---|
| 字节转码 |
`16进制字节流`
,
`美化后`
,
`字符串格式`
,
`字节数组格式`
,
``
|√|
\ No newline at end of file
src/config.js
浏览文件 @
2732cf89
...
...
@@ -21,6 +21,7 @@ const category = [
{
'
name
'
:
'
check
'
},
{
'
name
'
:
'
generate
'
},
{
'
name
'
:
'
other
'
},
{
'
name
'
:
'
yeahmao
'
},
]
const
tool
=
[
...
...
@@ -64,6 +65,9 @@ const tool = [
{
'
name
'
:
'
armConverter
'
,
'
cat
'
:
[
'
conversion
'
]},
{
'
name
'
:
'
bcrypt
'
,
'
cat
'
:
[
'
encryption
'
,
'
check
'
]},
{
'
name
'
:
'
ipcalc
'
,
'
cat
'
:
[
'
generate
'
]},
// yeahmao
{
'
name
'
:
'
hexConvert
'
,
'
cat
'
:
[
'
yeahmao
'
]},
]
// 工具类功能配置
...
...
src/i18n/locales/en/hexString.i18n.json5
浏览文件 @
2732cf89
{
"input": "
Input
",
"input": "
assemble
",
"output": "Output",
"uppercase": "Uppercase",
}
src/i18n/locales/en/main.i18n.json5
浏览文件 @
2732cf89
...
...
@@ -39,6 +39,7 @@
"category_check": "Validator",
"category_generate": "Generate",
"category_other": "Other",
"category_yeahmao": "yeahmao",
// tool
"tool_hash": "Hash",
"tool_encrypt": "Encrypt & Decrypt",
...
...
@@ -73,6 +74,7 @@
"tool_armConverter": "ARM/HEX",
"tool_bcrypt": "Bcrypt",
"tool_ipcalc": "Ipcalc",
"tool_hexConvert": "hexConvert",
// other
"css_main_category_item_style": "padding: 0 10px",
"editor_line_wrapping": "Line Wrapping",
...
...
src/i18n/locales/zh_CN/main.i18n.json5
浏览文件 @
2732cf89
...
...
@@ -39,6 +39,7 @@
"category_check": "校验",
"category_generate": "生成",
"category_other": "其他",
"category_yeahmao": "夜猫逐梦",
// 工具
"tool_hash": "哈希(hash)",
"tool_encrypt": "加密/解密",
...
...
@@ -73,6 +74,7 @@
"tool_armConverter": "ARM/HEX",
"tool_bcrypt": "Bcrypt",
"tool_ipcalc": "IP网络计算器",
"tool_hexConvert": "字节转换",
// 其他
"css_main_category_item_style": "padding: 0 20px",
"editor_line_wrapping": "自动换行",
...
...
src/tool.router.js
浏览文件 @
2732cf89
...
...
@@ -161,6 +161,10 @@ const routes = [
{
path
:
'
/tool/ipcalc
'
,
component
:
r
=>
require
([
'
./views/tool/ipcalc.vue
'
],
r
)
},
{
path
:
'
/yeahmao/hexConvert
'
,
component
:
r
=>
require
([
'
./views/yeahmao/hexConvert.vue
'
],
r
)
}
]
...
...
src/tool.vue
浏览文件 @
2732cf89
...
...
@@ -57,7 +57,11 @@ export default {
watch
:
{
currentTool
(
name
)
{
model
.
setCurrentTool
(
name
)
this
.
$router
.
push
(
'
/tool/
'
+
name
)
if
(
name
==
'
hexConvert
'
)
{
this
.
$router
.
push
(
'
/yeahmao/
'
+
name
)
}
else
{
this
.
$router
.
push
(
'
/tool/
'
+
name
)
}
},
},
created
()
{
...
...
src/views/yeahmao/hexConvert.vue
0 → 100644
浏览文件 @
2732cf89
<
template
>
<heightResize
ignore
:append=
"['.page-option-block']"
@
resize=
"resize"
>
<autoHeightTextarea
v-model=
"current.input"
:height=
"inputHeight"
:placeholder=
"$t('hexString_input')"
/>
<option-block
class=
"page-option-block"
>
<FormItem>
<ButtonGroup>
<Button
type=
"primary"
@
click=
"handle()"
>
Convert
</Button>
<!--
<Button
type=
"primary"
@
click=
"handle('str')"
>
Hex -> String
</Button>
-->
</ButtonGroup>
</FormItem>
<FormItem>
<Checkbox
v-model=
"current.isUppercase"
>
{{
$t
(
'
hexString_uppercase
'
)
}}
</Checkbox>
</FormItem>
</option-block>
<span>
美化的内容
:
</span><input
class=
"input_width_100"
type=
"text"
v-model=
"current.output_beautiful"
>
<br>
<span>
字符串格式
:
</span><input
class=
"input_width_100"
type=
"text"
v-model=
"current.output_str"
>
<br>
<span>
字节数组格式:
</span><input
class=
"input_width_100"
type=
"text"
v-model=
"current.output_bytes"
>
<autoHeightTextarea
:value=
"current.output"
:height=
"outputHeight"
:placeholder=
"$t('hexString_output')"
/>
</heightResize>
</
template
>
<
script
>
import
heightResize
from
"
../tool/components/heightResize
"
;
import
autoHeightTextarea
from
"
../tool/components/autoHeightTextarea
"
;
export
default
{
components
:
{
heightResize
,
autoHeightTextarea
},
created
()
{
this
.
$initToolData
(
'
input
'
)
},
methods
:
{
handle
()
{
console
.
log
(
'
enter...
'
)
var
bytes
=
''
if
(
this
.
current
.
input
)
{
var
lines
=
this
.
current
.
input
.
split
(
'
\n
'
);
lines
.
forEach
(
line
=>
{
console
.
log
(
line
)
var
items
=
line
.
split
(
'
|
'
)
if
(
items
.
length
!=
4
)
{
return
}
bytes
+=
items
[
1
]
// items.forEach(item => {
// console.log(item)
// })
})
}
console
.
log
(
'
leave...
'
,
bytes
)
this
.
current
.
output
=
bytes
//
this
.
current
.
output_beautiful
=
bytes
.
replaceAll
(
'
:
'
,
''
).
replaceAll
(
'
'
,
''
)
if
(
this
.
current
.
output_beautiful
.
length
%
2
==
1
)
{
alert
(
'
数据有误,请检查后再尝试
'
)
return
;
}
var
lst
=
[]
for
(
var
i
=
0
;
i
<
this
.
current
.
output_beautiful
.
length
/
2
;
++
i
)
{
lst
.
push
(
this
.
current
.
output_beautiful
.
slice
(
2
*
i
,
2
*
i
+
2
))
}
this
.
current
.
output_str
=
''
lst
.
forEach
(
item
=>
{
this
.
current
.
output_str
+=
'
\\
x
'
+
item
;
})
this
.
current
.
output_bytes
=
''
lst
.
forEach
(
item
=>
{
this
.
current
.
output_bytes
+=
'
0x
'
+
item
+
'
,
'
;
})
},
resize
(
height
)
{
this
.
inputHeight
=
Math
.
min
(
320
,
Math
.
ceil
(
height
/
2
))
// this.outputHeight = height - this.inputHeight
this
.
outputHeight
=
180
}
},
data
()
{
return
{
current
:
{
input
:
""
,
isUppercase
:
false
,
output_beautiful
:
""
,
// 一行,全字节内容,美化的内容
output_str
:
""
,
// 字符串格式
output_bytes
:
""
,
// 字节数组格式
output
:
""
,
operation
:
""
},
inputHeight
:
100
,
outputHeight
:
100
}
},
}
</
script
>
<
style
scoped
>
.input_width_100
{
width
:
80%
;
margin
:
8px
0
;
}
</
style
>
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录