预览模式: 普通 | 列表

vb.net 字典排序

 在 VB.NET 中,可以使用 System.Linq 命名空间中的 orderBy 方法和 ToList 方法对字典进行排序,并将排序结果转换为列表形式。以下是一个对字典按照键或值进行排序的示例代码:

vb.net
Copy code
Dim dict As New Dictionary(Of String, Integer)() ' 创建一个字典
dict.Add("apple", 2) ' 向字典中添加元素
dict.Add("orange", 3)
dict.Add("banana", 1)

' 对字典按键进行升序排序
Dim sortedByKey = dict.OrderBy(Function(x) x.Key).ToList()

' 对字典按键进行降序排序
Dim sortedByKeyDescending = dict.OrderByDescending(Function(x) x.Key).ToList()

查看更多...

Tags: vb.net

分类:技术文章 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 462

在 VB.NET 中,可以使用 System.IO 命名空间中的 File 类和 StreamReader 类来读取文本文件,并将每行数据添加到列表中。以下是一个将文本文件导入列表的示例代码:

vb.net
Copy code
Dim filePath As String = "path/to/your/file.txt" ' 文件路径
Dim list As New List(Of String)() ' 创建一个字符串列表

Using reader As New StreamReader(filePath) ' 创建一个文件读取器
While Not reader.EndOfStream ' 循环读取每一行数据
Dim line As String = reader.ReadLine() ' 读取一行数据
list.Add(line) ' 将数据添加到列表中
End While
End Using
上述代码中,我们首先定义了一个名为 filePath 的字符串变量,用于保存待读取的文本文件路径。然后,我们创建了一个名为 list 的字符串列表,用于保存文本文件中的每一行数据。接下来,我们使用 Using 语句创建一个文件读取器 reader,并打开待读取的文本文件。使用 While 循环读取文本文件中的每一行数据,使用 ReadLine 方法读取一行数据,并将其添加到列表中。最后,我们使用 End Using 结束文件读取器的使用。

注意,在使用 StreamReader 读取文本文件时,如果文件不存在或者文件读取发生错误,可能会抛出异常。因此,在实际应用中,需要根据具体情况添加异常处理机制。

Tags: vb.net

分类:技术文章 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 272

可以使用字典(Dictionary)来实现统计每条数据的重复次数,具体实现如下:

vb.net

Dim data As New List(Of String) ' 保存2000000条数据的列表
' 假设数据已经保存在 data 列表中

Dim countDict As New Dictionary(Of String, Integer) ' 字典用于保存每条数据的重复次数

For Each item As String In data
If countDict.ContainsKey(item) Then
countDict(item) += 1 ' 如果字典中已经存在这条数据,重复次数加1
Else
countDict(item) = 1 ' 如果字典中不存在这条数据,添加到字典中并初始化重复次数为1
End If
Next

查看更多...

Tags: vb.net

分类:技术文章 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 279

lnmp重新安装mysql

安装mysql好长时间,一直没去管,后来一直频繁重启,各种网上找方案去解决,最后问题太异常,一顿操作猛如虎之后把mysql彻底搞垮,无奈只能进行重装。

whereis mysql

mysql: /usr/bin/mysql /usr/lib/mysql /usr/include/mysql /usr/local/mysql

找到五个目录

查看更多...

Tags: lnmp

分类:技术文章 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 279

全网最全超详细.htaccess语法讲解

(基础)
一、正则表达式
$ 匹配输入字符串的结尾位置。如果设置了 RegExp 对象的 Multiline 属性,则 $ 也匹配 '\n' 或 '\r'。要匹配 $ 字符本身,请使用 \$。
 
^  匹配输入字符串的开始位置,除非在方括号表达式中使用,当该符号在方括号表达式中使用时,表示不接受该方括号表达式中的字符集合。要匹配 ^ 字符本身,请使用 \^。
 
.    换行符以外的所有字符
 
\w   匹配字母或数字或下划线或汉字
 
\s   匹配任意的空白符
 
\d   匹配数字
 
\b   匹配单词的开始或结束
 
 *   重复零次或更多次
 
 +   重复一次或更多次
 
 ?   重复零次或一次
 
 {n}         重复n次
 
 {n,}        重复n次或更多次
 
 {n,m}       重复n到m次
 
 () $1 $2    一个括号代表一个分组,第一个括号里匹配的内容就用$1引用,第二个括号匹配的内容用$2引用,以此类推......
二、 htaccess是什么
概述来说,htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。
 
Unix、Linux系统或者是任何版本的Apache Web服务器都是支持.htaccess的,但是有的主机服务商可能不允许你自定义自己的.htaccess文件。
 
三、.htaccess都可以做什么?
.htaccess文件可以的事情,主要包括:文件夹密码保护、用户自定义重定向、自定义404页面、扩展名伪静态化、禁止特定IP地址的用户、只允许特定IP地址的用户、禁止目录列表,等等。
 
四、.htaccess语法介绍
RewriteCond  (可以理解为if)
语法结构
 
RewriteCond String Pattern [flags]
 
RewriteCond指令定义一条规则条件。在一条RewriteRule指令前面可能会有一条或多条RewriteCond指令,只有当RewriteCond的条件(CondPattern)匹配成功时,RewriteRule的重写规则才被应用于当前URL处理。
 
TestString是一个纯文本的字符串,除了包含普通的字符外,还可以包括下列的变量结构扩展:
RewriteMap扩展:引用方法是:${mapname:key|default} 细节请参见RewriteMap指令 。
 
TestString可以包含服务器变量 ,引用方法是:%{NAME_OF_VARIABLE}
 
NAME_OF_VARIABLE可以是下表列出的字符串之一:
 
HTTP_USER_AGENT
 
HTTP_REFERER
 
HTTP_COOKIE
 
HTTP_FORWARDED
 
HTTP_HOST
 
HTTP_PROXY_CONNECTION
 
HTTP_ACCEPT
 
REMOTE_ADDR
 
REMOTE_HOST
 
REMOTE_USER
 
REMOTE_IDENT
 
REQUEST_METHOD
 
SCRIPT_FILENAME
 
PATH_INFO
 
QUERY_STRING
 
AUTH_TYPE
 
DOCUMENT_ROOT
 
SERVER_ADMIN
 
SERVER_NAME
 
SERVER_ADDR
 
SERVER_PORT
 
SERVER_PROTOCOL
 
SERVER_SOFTWARE
 
TIME_YEAR
 
TIME_MON
 
TIME_DAY
 
TIME_HOUR
 
TIME_MIN
 
TIME_SEC
 
TIME_WDAY
 
TIME
 
API_VERSION
 
THE_REQUEST
 
REQUEST_URI
 
REQUEST_FILENAME
 
IS_SUBREQ
 
RewriteRule 
语法结构
 
RewriteRule pattern target [Flag1,Flag2,Flag3]
 
flags 
RewriteRule flag
RewriteRule标记含 义描 述
RRedirect发出一个HTTP重定向
FForbidden禁止对URL地址的存取
GGone标记URL地址不存在
PProxy将URL地址传递给mod_proxy
LLast停止处理接下来的规则
NNext再次重第一个规则开始处理,但是使用当前重写后的URL地址
CChain将当前的规则和紧随其后的规则链接起来
TType强制执行指明的MIME类
NSNosubreq只在没有任何内部子请求执行时运行本脚本
NCNocaseURL地址匹配对大小写不敏感
QSAQsappend在新的URL地址后附加查询字符串部分,而不是替代
PTPassthrough将重写后的URL地址传递给另一个Apache模块进行进一步处理
SSkip忽略之后的规则
EEnv设置环境变量
rewritecond的其他用法:
“-d”(目录)
 
    将TestString视为一个路径名并测试它是否为一个存在的目录。
 
“-f”(常规文件)
 
    将TestString视为一个路径名并测试它是否为一个存在的常规文件。
 
“-s”(非空的常规文件)
 
    将TestString视为一个路径名并测试它是否为一个存在的、尺寸大于0的常规文件。
 
“-l”(符号连接)
 
    将TestString视为一个路径名并测试它是否为一个存在的符号连接。
 
“-x”(可执行)
 
    将TestString视为一个路径名并测试它是否为一个存在的、具有可执行权限的文件。该权限由操作系统检测。
 
“-F”(对子请求存在的文件)
 
    检查TestString是否为一个有效的文件,而且可以在服务器当前的访问控制配置下被访问。它使用一个内部子请求来做检查,由于会降低服务器的性能,所以请谨慎使用!
 
“-U”(对子请求存在的URL)
 
    检查TestString是否为一个有效的URL,而且可以在服务器当前的访问控制配置下被访问。它使用一个内部子请求来做检查,由于会降低服务器的性能,所以请谨慎使用!
 
 
 
常规demo解析
<IfModule mod_rewrite.c>
  Options +FollowSymlinks -Multiviews
  RewriteEngine On //开启
 
  RewriteRule ^index.php/(.*)$ https://domain.com/$1 [N,L,R=301] //匹配带有index.php的页面去除index.php并301跳转到 https://domain.com/对应正则匹配的参数 上
 
  RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/   //如果是 GET /index.php HTTP/1.1
 
  RewriteRule ^index\.php$ https://domain.com/ [R=301,L]  完全匹配 index.php 则301跳转到 https://domain.com/ 上
        
  RewriteCond %{HTTP_HOST} !^domain.com$ [NC]
  RewriteRule ^(.*)$ https://domain.com/$1 [L,R=301]
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-f
 
  RewriteRule ^(.*)$ index.php [L,E=PATH_INFO:$1]
 
 
</IfModule>
 
分类:技术文章 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 257

安装腾讯云开发者工具套件 PHP SDK 3.0

参考地址:https://cloud.tencent.com/document/sdk/PHP

Centos:

 

步骤1:安装 Composer

  • Windows 环境请访问 Composer 官网下载安装包安装。
  • Unix 环境在命令行中执行以下命令安装:
     
    curl -sS https://getcomposer.org/installer | php
     
    sudo mv composer.phar /usr/local/bin/composer

步骤2:添加镜像源

中国大陆地区的用户可以使用腾讯云镜像源提高下载速度,在打开的命令窗口执行以下命令:

 
composer config -g repos.packagist composer https://mirrors.tencent.com/composer/

查看更多...

Tags: php

分类:技术文章 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 540

JS使用正则表达式校验手机号码

检验的格式为
开头数字必须为1,第二位必须为3至9之间的数字,后九尾必须为0至9组织成的十一位电话号码

JavaScript代码
  1. //JS使用正则表达式校验电话号码  
  2.     function checkModbile(mobile) {  
  3.         var re = /^1[3,4,5,6,7,8,9][0-9]{9}$/;  
  4.         var result = re.test(mobile);   
  5.         if(!result) {  
  6.             alert("手机号码格式不正确!");  
  7.             return false;//若手机号码格式不正确则返回false  
  8.             }  
  9.         return true;  
  10.     }  

 

Tags: javascript

分类:技术文章 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 339

 

 
JavaScript代码
  1. //1、数字前端去0  
  2. var num = number.replace(/\b(0+)/gi,"")  
  3. //2、文字去除空格  
  4.   
  5. var str = str.replace(/(^\s*)|(\s*$)/g, "")  
  6. //3、截取字符串  
  7.   
  8. var str = abcdef  
  9. str = str.substr(2,3) //cde  
  10. //4、保留小数  
  11.   
  12. //保留4位小数  
  13. var number = 12.3321432;  
  14. number = String(number).replace(/^(.*\..{4}).*$/,"$1");  
  15. number = Number(number); // number = 12.3321  
  16.   
  17. //保留2位小数  
  18. var reg = /^(.*\..{2}).*$/;  
  19. var number2 = 12.3;  
  20. number2 = String(number2).replace(reg ,"$1");  
  21. number2 = Number(number2); // number2 = 12.3 不足保留位数不补0  
  22.   
  23. //5、数字不足位数前补0  
  24.   
  25. var number = 100  
  26. var num = (Array(5).join(0) +number).slice(-5) //num = 00100  

Tags: javascript

分类:技术文章 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 438

js控制div内的滚动条的位置

 
通过div的scrollTop变动控制垂直滚动条位置。

通过div的scrollLeft变动控制水平滚动条位置。

示例:

<body>
//d1是外层div,带滚动条
<div id='d1' style='height:200px;width:100px;overflow:auto;background:blue;'>
<div style='height:500px;width:500px;background:yellow'>2222</div>
</div>
</body>
<script>
document.getElementById('d1').scrollTop=100;//通过scrollTop设置滚动到100位置
document.getElementById('d1').scrollLeft=200;//通过scrollTop设置滚动到200位置
</script>
.

 

查看更多...

Tags: javascript

分类:技术文章 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 334

cefsharp winfrom 保存用户登录状态

winfrom 使用cefsharp作为内嵌浏览器,要求是保存用户登录,在下次启动时不要要再输入用户名和密码,
CefSettings _settings = new CefSettings();
_settings.PersistSessionCookies = true;
但是无效

回答:
保持登录状态需满足

网站返回的 cookie 不带过期时间
设置缓存路径 CefSettings.CachePath
存储会话 cookie CefSettings.PersistSessionCookies

 

settings.CachePath = Application.StartupPath & "/cache"
settings.PersistSessionCookies = True

查看更多...

Tags: vb.net

分类:技术文章 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 346

vb.net unicode编码转中文字符

Private Function UniTostr(ByVal body As String)
Dim S2 As String
Dim S3 As String = ""
Dim I1 As String

body = Trim(body)
Do While Len(body) > 1
I1 = InStr(1, body, "\u")
If I1 > 0 Then
S3 = S3 & Strings.Left(body, I1 - 1)
S2 = "&H" & Mid(body, I1 + 2, 4)
S2 = ChrW(S2)
S3 = S3 & S2
body = Strings.Right(body, Len(body) - I1 - 5)
Else
S3 = S3 & body
body = ""
End If
Loop
UniTostr = S3
End Function

Tags: vb.net

分类:技术文章 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 308

PHP CURL使用POST发送json数据

因项目的需要,PHP调用第三方 Java/.Net 写好的 Restful Api,其中有些接口,需要 在发送 POST 请求时,传入对象。
Http中传输对象,最好的表现形式莫过于JSON字符串了,但是作为参数的接收方,又是需要被告知传过来的是JSON!
其实这不难,只需要发送一个 http Content-Type头信息即可,即 “Content-Type: application/json; charset=utf-8”,参考代码如下:

PHP代码
  1. /** 
  2.  * PHP发送Json对象数据 
  3.  * @param $url 请求url 
  4.  * @param $jsonStr 发送的json字符串 
  5.  * @return array 
  6.  */  
  7. function http_post_json($url$jsonStr)  
  8. {  
  9.     $ch = curl_init();  
  10.     curl_setopt($ch, CURLOPT_POST, 1);  
  11.     curl_setopt($ch, CURLOPT_URL, $url);  
  12.     curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonStr);  
  13.     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);  
  14.     curl_setopt($ch, CURLOPT_HTTPHEADER, array(  
  15.             'Content-Type: application/json; charset=utf-8',  
  16.             'Content-Length: ' . strlen($jsonStr)  
  17.         )  
  18.     );  
  19.     $response = curl_exec($ch);  
  20.     $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);  
  21.     curl_close($ch);  
  22.     return array($httpCode$response);  
  23. }  
  24.   
  25. $url = "http://www.baidu.com"; //请求地址  
  26. $arr = array('a' => 1, 'b' => 2, 'c' => 2); //请求参数(数组)  
  27. $jsonStr = json_encode($arr); //转换为json格式  
  28. $result = http_post_json($url$jsonStr);  
  29. print_r($result);  

Tags: php

分类:技术文章 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 292

 广告位

↑返回顶部↑