| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 490 人关注过本帖
标题:从下载的网络文本保存后的文本咋不是一样的格式啊
只看楼主 加入收藏
dq8888
Rank: 1
等 级:新手上路
帖 子:15
专家分:5
注 册:2015-5-29
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:5 
从下载的网络文本保存后的文本咋不是一样的格式啊
从下载的网络文本保存后的文本咋不是一样的格式啊(如下图),想和网络文本一样换行保存,期待修正(附代码)...

图片附件: 游客没有浏览图片的权限,请 登录注册


Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
Private Const ERROR_SUCCESS As Long = 0
Private Const BINDF_GETNEWESTVERSION As Long = &H10
Private Const INTERNET_FLAG_RELOAD As Long = &H80000000

Public Function DownloadFile(sSourceUrl As String, sLocalFile As String) As Boolean

   DownloadFile = URLDownloadToFile(0&, sSourceUrl, sLocalFile, BINDF_GETNEWESTVERSION, 0&) = ERROR_SUCCESS

End Function
Private Sub Command1_Click()
Call DownloadFile("http://www., "c:\p3.txt")
Form1.Caption = "Finish!"
End Sub
搜索更多相关主题的帖子: 网络 
2015-06-15 22:05
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:2 
有可能是 换行符的问题。

如果对方服务器是 UNIX 系列的,那么他的换行符是 vbcr ,而WINDOWS的换行符是 vbcrlf
就会造成这样,具体需要十六进制编辑器查看确认。

处理办法:打开文件,把 vbcr 换成 vbcrlf ,然后保存,就可以了。

授人于鱼,不如授人于渔
早已停用QQ了
2015-06-16 08:17
lianyicq
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:26
帖 子:737
专家分:3488
注 册:2013-1-26
收藏
得分:0 
看了下载的txt文件是"0A"换行。

大开眼界
2015-06-16 08:45
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:0 
0A 换行,就是 chr(10) ,写成常量就是 vblf

WINDOWS的标准是: chr(13)+chr(10)换行,写成常量就是 vbcrlf

0A是十六进制,换成 十进制,就是10 。

难道我记反了?

授人于鱼,不如授人于渔
早已停用QQ了
2015-06-16 12:26
dq8888
Rank: 1
等 级:新手上路
帖 子:15
专家分:5
注 册:2015-5-29
收藏
得分:0 
回复 3楼 lianyicq
换了下未达到效果


Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
Private Const ERROR_SUCCESS As Long = 0
Private Const BINDF_GETNEWESTVERSION As Long = &H10
Private Const INTERNET_FLAG_RELOAD As Long = &H80000000

Public Function DownloadFile(sSourceUrl As String, sLocalFile As String) As Boolean

   DownloadFile = URLDownloadToFile(0&, sSourceUrl, sLocalFile, BINDF_GETNEWESTVERSION, 0&) = ERROR_SUCCESS

End Function
Private Sub Command1_Click()
Call DownloadFile("http://www., "c:\p3.txt")

H = "c:\p3.txt"
Dim inp, temp As String
Open H For Input As #1
Do While Not EOF(1)
    Line Input #1, inp
    inp = Replace(inp, vbCr, vbCrLf) 'vbOA换成vbcrlf未达到效果,vbcr换成vbcrlf未达到效果。
    temp = temp & inp & vbCrLf
Loop
Close #1




Form1.Caption = "Finish!"
End Sub
2015-06-16 13:12
lianyicq
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:26
帖 子:737
专家分:3488
注 册:2013-1-26
收藏
得分:8 
回复 5楼 dq8888
在二进制文制文件中插入字节的操作需要创建一个新文件。
程序代码:
  Dim i As Byte
  Dim k As Byte
  k = &HD
  Open "c:\p3.txt" For Binary As #1
  Open "c:\p3.dat" For Binary As #2
  While (Not (EOF(1)))
    Get #1, , i
    If i = &HA Then Put #2, , k
    Put #2, , i
  Wend
  Close #1
  Close #2


大开眼界
2015-06-16 13:59
快速回复:从下载的网络文本保存后的文本咋不是一样的格式啊
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022060 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved