2023年3月

1、把 鼠标 移到一列的标题上单击选中整列,然后再
编辑栏
输入要填充的内容(注意不要点其他地方导致取消了选中的整列,内容可以是公式,也可以是文本内容),如本案例输入的1,
2、然后按Ctrl+Eenter键(要保证鼠标的当前位置是在编辑栏哦),系统就会自动将选中的一整列填充为我们刚刚输入的公式内容“1”
3、看到了吧,总共这一列总共有1048576行数据哦,一键就搞定,速度快吧

在上方输入 A5000 回车可以快速跳到 5000的位置,从5001 快捷键ctrl+shift+↓↓全选到结尾删除掉。

回到A1 双击单元格右下角 自动递增填好序号。

本人是delphi ,

btnStart.Enabled:=false;

之间做一个递归比较耗时,

btnStart.Enabled:=true;

发现在Enabled:=false; 之后还是会触发用户重复clik,诧异了。 百度了一下,发现 C# winform也是有这个问题,同一套机制。百度到下方文章,

避免用户重复点击按钮(使用Enable:=False,消息繁忙时会有堵塞的问题,只能改用Sleep) - findumars - 博客园
https://www.cnblogs.com/findumars/p/6347945.html

//现象描述://用户点击按钮后程序开始繁忙工作,这时候用户不知道是否成功,就继续点几次//采用Enalbe = false ... = true的方式发现还会触发点击,分析原因如下//当程序繁忙的时候消息被堵住了//所以点击消息还会被处理//将队列里的消息处理掉后才打开按钮的Enabled

private void button1_Click(objectsender, EventArgs e)
{
button1.Enabled
= false;
Thread.Sleep(
2000);
richTextBox1.AppendText(Environment.TickCount.ToString()
+ "/r/n");
Application.DoEvents();
//关键语句 button1.Enabled = true;
}

而我改成: 就可以了。

procedureTForm1.btnStartClick(Sender: TObject);beginbtnStart.Enabled:=false;
ErgodicDirectory(
'');//递归去做的比较耗时的事情 Application.ProcessMessages();
btnStart.Enabled:
=true;//在恢复之前 用Application.ProcessMessages(); end;

application.ProcessMessages的主要作用使程序在循环时能够相应外界事件。
一般情况下,程序在循环的时候不响应外界事件。直到循环结束为止才能接受和响应外界事件。
application.ProcessMessages可以有效的解决循环循环的独占问题,能够暂时中断应用程序的执行。
比如,你要设计一个计算,这个计算需要循环10000次。当循环开始到500次的时候,用户突然不想计算下去了,它想取消这个计算,
这时候你就可以设置一个cancel按钮,然后在循环体内部合适的位置application.ProcessMessages。来处理cancel按钮的信息,中断循环。
如果你在循环体内没有application.ProcessMessages这句。当循环开始后,程序就被10000次的这个循环独占了,直到循环结束为止。在循环的期间,用户的按什么按钮都没有用。

平时也是常用 application.ProcessMessages 来 防止程序假死。想不到这里也需要用到它。

start = Integer.parseInt(ss.trim());
cnt = Integer.valueOf(cc.trim());

java.lang.NumberFormatException: For input string: "0"

代码是从一个 txt文本读取一行 如 0,7 的拆分进行int转换,结果报错,百度了很久,百思不得其姐,调试看得到的 也是标准字符串“0” ,

点开value 万万没有想到前面还有个非法字符。

List<String> lines = null;
lines
= FileUtils.readLines(new File("Log\\22222.txt") );for(String line : lines) {int start = 0,cnt = 0;
String ss
=line.split(",")[0];
String cc
=line.split(",")[1];
start
=Integer.parseInt(ss.trim());//报错java.lang.NumberFormatException: For input string: "0"
cnt
=Integer.valueOf(cc.trim());
}

调试看下方:读到的 “0,7”   的value前面还有个非法占位符 (
在外面看不出
有空格和什么占位符)

用nodepad++ 看所有字符也看不出

背景:本人原来的txt是由如下代码生成的,

FileUtils.writeStringToFile(new File("Log\\22222.txt"),  "****\n", "utf-8", true);
保存的格式估计就不是 电脑手动生成的一样了。所以txt保存的时候也有多种格式,容易出问题。


 最后 重新建立新的  txt 文档,再读取就没有 非法字符'\uFEFF'在前面了,



网上有很多是直接解决 java: 非法字符: ‘\ufeff’ 的帖子 可以看看。 我直接创建新的 文本解决了。就没有折腾了。主要调试的时候要点进去看value。

Exception in thread "main" java.lang
.NoSuchMethodError: okhttp3.HttpUrl.get(Ljava/lang/String;)Lokhttp3/HttpUrl;

at r
etrofit2.Retrofit$Builder.baseUrl(Retrofit.java:458)

at pe.freeopen.eosclient.client.http.Generator.createService(Generator.java:45)
at pe.freeopen.eosclient.EosClient.<init>(EosClient.java:42)

百度了两个案例。

retrofit 依赖okhttp3报错_要争气的博客-CSDN博客
https:
//blog.csdn.net/liangwenmail/article/details/118327411retrofit是一款好用的http框架,在项目集成retrofit时,有时候会启动报关于okhttp错,如下:

the follollowing method did not exists:
okhttp3.HttpUrl.get(Ljava
/lang/String;)Lokhttp3/HttpUrl;
解决思路:
排除retrofit 的okhttp3依赖,强依赖okhttp3
3.12.0版本

NoSuchMethodError: okhttp3.HttpUrl.get(Ljava/lang/String;)Lokhttp3/HttpUrl; 问题原因及解决_Algowi 京保的博客-CSDN博客
https:
//blog.csdn.net/weixin_41020185/article/details/105959138 1.问题原由
由于项目中用到com.squareup.retrofit2 retrofit2.jar
2.5.0retrofit2(2.5.0)用的是okhttp3(3.12.0)版,其中有有一段是这样引用的/*** Set the API base URL.
*
*
@see#baseUrl(HttpUrl)*/ publicBuilder baseUrl(String baseUrl) {
Objects.requireNonNull(baseUrl,
"baseUrl == null");returnbaseUrl(HttpUrl.get(baseUrl));
}
HttpUrl.get(baseUrl) 就是这段报的错
项目中okhttp3 包版本冲突,引用的是okhttp3(
3.8.1)版,而(3.8.1)版没有HttpUrl.get(String url)方法 ,而是换成了HttpUrl.get(URL url)方法,因此报错,解决jar包冲突引用okhttp3(3.12.0)版本就好了。

本人解决方法:

===拓展 如何查看pom的依赖关系, 打开pom 右键 查看 diagrams 能看到报错的依赖,一目了然。

因为本人项目中的 retrofit是2.5版本,里面依赖 okhttp  3.12.0版本。而本人想买中用的 okhttp 却是 3.10.0 ,所以有问题。

解决方法,要么把okhttp 改大成,3.12.0    要么把retrofit 由2.5版本改成2.4版本。

本人直接将2.5改成 2.4的版本就可以了。

<dependency>
            <groupId>com.squareup.okhttp3</groupId>
            <artifactId>okhttp</artifactId>
            <version>3.10.0</version>
        </dependency>
        <dependency>
            <groupId>com.squareup.retrofit2</groupId>
            <artifactId>retrofit</artifactId>
            <version>2.5.0</version>
        </dependency>
        <dependency>
            <groupId>com.squareup.retrofit2</groupId>
            <artifactId>converter-jackson</artifactId>
            <version>2.5.0</version>
        </dependency>

程序可以跑起来了,但是还有问题,

把retrofit 由2.5版本改成2.4版本。请求一些api返回不了数据。

把okhttp 改大成,3.12.0 ,某个api能返回数据。

两种修改方式,看pom依赖都还有红线,... 应该是没有问题的,我看了其他正常的项目也是有红线。比如

目前 把okhttp 改大成,3.12.0  是可以正常跑了。

                

pom中写好了依赖还是不可以 的,需要在IDEA环境中安装 此插件。

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.16.22</version>
        </dependency>

LomBok使用详解 - FQLqiqi - 博客园
https://www.cnblogs.com/fqlqiqi/articles/15918055.html

反正好处多多

https://www.codenong.com/11966525/
git svn clone -r <revision number>:HEAD <url>/root/projectA
git svn clone -r HEAD <url>/root/projectA
git svn clone -r <revision number>:HEAD <url>/root/projectA --no-metadata

https://www.orcode.com/question/207304_ka0c7e.html

https://zhuanlan.zhihu.com/p/36673621

https://www.baidu.com/s?wd=git+svn+clone+%E6%B2%A1%E6%9C%89%E5%88%9B%E5%BB%BA%E6%96%87%E4%BB%B6%E5%A4%B9&ie=UTF-8