filename = str(fi.split(".")[-1])
时间: 2024-05-22 07:10:40 浏览: 12
这行代码是将一个文件名字符串中的后缀名提取出来。
具体来说,`fi.split(".")` 会将文件名字符串以 "." 为分隔符,拆分成一个字符串列表。列表中最后一个元素就是文件的后缀名,因此使用 `[-1]` 索引可以得到后缀名字符串。
最后,将后缀名字符串转换为 `str` 类型并赋值给 `filename` 变量。
相关问题
优化以下代码: String fileName = ""; fileName = tableName + "-" + columnName + "-" + dqExecuteResult.getTaskInstanceId(); String originFileName = new Path(currentPath).getName(); String[] originFileSplit = originFileName.split("-"); if(originFileSplit.length > 2){ fileName = fileName + originFileSplit[0] + "-" + originFileSplit[1]; }
可以将代码优化为:
```
String fileName = String.format("%s-%s-%s", tableName, columnName, dqExecuteResult.getTaskInstanceId());
String originFileName = new Path(currentPath).getName();
String[] originFileSplit = originFileName.split("-");
if(originFileSplit.length > 2){
fileName += String.format("%s-%s", originFileSplit[0], originFileSplit[1]);
}
```
使用 `String.format` 可以使代码更加简洁,同时也可以避免字符串拼接导致的性能问题。另外,可以使用 `+=` 运算符来替代多次赋值操作,以增加代码的可读性。
怎么用VB提取每行J1=后的数字到MSHFlexGrid1中 CIP Z=-1.923 Y=5.495 K1=-1.973 J1=5.59 CIP Z=-1.799 Y=5.253 K1=-1.86 J1=5.374
可以使用VB中的Split函数和Mid函数来提取每行J1=后的数字到MSHFlexGrid1中,具体操作如下:
1. 首先,将文本文件逐行读取到一个字符串数组中。
2. 对于每行字符串,使用Split函数将其按照空格分隔成一个字符串数组。
3. 遍历该字符串数组,查找包含J1=的字符串,并使用Mid函数截取该字符串后的数字。
4. 将得到的数字添加到MSHFlexGrid1中。
以下是VB代码示例:
```
Dim fileNum As Integer
Dim fileName As String
Dim fileContent() As String
Dim row As Integer
' 打开文件并读取内容到数组
fileName = "file.txt"
fileNum = FreeFile()
Open fileName For Input As fileNum
row = 1
Do While Not EOF(fileNum)
Line Input #fileNum, fileContent(row)
row = row + 1
Loop
Close fileNum
' 遍历数组并提取J1后的数字到MSHFlexGrid1
For i = 1 To UBound(fileContent)
Dim strArr() As String
strArr = Split(fileContent(i), " ")
For j = 0 To UBound(strArr)
If InStr(strArr(j), "J1=") > 0 Then
Dim num As Double
num = CDbl(Mid(strArr(j), 4))
MSHFlexGrid1.TextMatrix(i, 1) = num ' 添加到MSHFlexGrid1中
End If
Next j
Next i
相关推荐
![txt](https://img-home.csdnimg.cn/images/20210720083642.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)