㈠ 怎樣比較2個文件夾裡面的文件是否相同
先把兩個文件夾備份好,
再把文件多的那個文件夾裡面的所有文件復制,
然後在文件少的那個文件夾裡面粘貼,
相同的全部替換就可以了。
㈡ bat檢測當前目錄下兩個文本文件是否相同
fca.txtb.txt||taskkill/f/im123.exe&abc.bat
㈢ 如何判斷兩個文件 相同
這是逐位元組比較法。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void main()
{
FILE *fileA, *fileB;
long fileASize, fileBSize;
unsigned char bufA[256], bufB[256];
long readSize;
fileA = fopen("D:\\mdd1.data", "r");
if (!fileA)
{
return;
}
fileB = fopen("D:\\mdd2.data", "r");
if (!fileB)
{
fclose(fileA);
return;
}
fseek(fileA, 0L, SEEK_END);
fileASize = ftell(fileA);
fseek(fileB, 0L, SEEK_END);
fileBSize = ftell(fileB);
if (fileASize != fileBSize)
{
printf("文件長度不等!\n");
fclose(fileA);
fclose(fileB);
return;
}
fseek(fileA, 0L, SEEK_SET);
fseek(fileB, 0L, SEEK_SET);
do
{
readSize = 256;
readSize = readSize > fileASize ? fileASize : readSize;
fread(bufA, readSize, 1, fileA);
fread(bufB, readSize, 1, fileB);
if (memcmp(bufA, bufB, readSize))
{
printf("文件內容不等!\n");
fclose(fileA);
fclose(fileB);
return;
}
fileASize -= readSize;
}
while (fileASize);
printf("文件內容相同!\n");
fclose(fileA);
fclose(fileB);
}
㈣ 想用vbs判斷兩個文件夾中的同名的ini文件是否完全一樣
有一段代碼被我暫時隱藏了,請向我追問,我會在追問里加上。
遇到過太多復制完答案就消失的人,我這也是為了保護自己的勞動成果,實屬無奈之舉,見諒。
f1="c: empabc.ini"'請改成第一個ini的完整路徑
f2="c:xyzdef.ini"'請改成第二個ini的完整路徑
'或者用下面這兩句
'f1=InputBox("請輸入第一個ini文件的完整路徑,如c: empabc.ini")
'f2=InputBox("請輸入第二個ini文件的完整路徑,如c:xyzdef.ini")
Setfso=WScript.CreateObject("Scripting.Filesystemobject")
Iffso.FileExists(f1)=FalseAndfso.FileExists(f2)=FalseThen
MsgBox"文件不存在,請重新輸入!"
WScript.Quit
EndIf
'關鍵代碼
'暫時隱藏,請向我追問。無奈之舉,見諒。
'關鍵代碼
IfStrComp(t1,t2,1)<>0Then'如果兩ini文件不完全相同
dsrc="c: emp"'請輸入源文件夾的完整路徑
dtar="d:abc"'請輸入目標文件夾的完整路徑
'或者用下面這兩句
'dsrc=InputBox("請輸入源文件夾的完整路徑,如c: emp")
'dtar=InputBox("請輸入目標文件夾的完整路徑,如d:abc")
fso.CopyFolderdsrc,dtar,True'拷貝文件夾
'此命令會覆蓋目標文件下中同名文件,不想覆蓋就把true改成false
EndIf
ff1.Close
ff2.Close
SetWshShell=WScript.CreateObject("Wscript.Shell")
wshshell.Run"cmd.exe"'改成你要運行的程序
㈤ python讀取兩個文件並且判斷是否一致
'''判斷兩個文件是否相同,如果不同請指出第幾行不相同'''def f1vsf2(name1,name2):
f1 = open(name1)
f2 = open(name2)
count = 1
msg=[] for line1 in f1:
line2 = f2.readline() if(line1!=line2):
msg.append("第%d行不一樣"%count)
count+=1
f1.close()
f2.close() return msg
isbool = Truewhile isbool:
fname1 = input("請輸入要比較的文件1路徑及文件名:") if fname1 =='': print("文件名不能請重新輸入") break;
fname2 = input("請輸入要比較的文件2路徑及文件名:") if fname2 =='': print("文件名不能請重新輸入") break;
result = f1vsf2(fname1,fname2) if len(result)==0: print("兩個文件完全一致") else: print("兩個文件共有【%d】行不同"%len(result)) for msg in result: print(msg)
isbool = False
㈥ mfc判斷兩個文件是否在同一文件夾
是否需要源程序,我這里有,以前做過,現在有點理不出頭緒了。你說的這個難點有兩個:1.在MFC中顯示圖片,這是一種模塊功能,你可以單獨來寫。2.遍歷指定文件夾,找到指定文件。這個難度可能要比第一條大,因為第一條有許多源代碼可以參考,而這條你可以參見一下Windows資源管理器的相關編程,它就涉及到同一文件夾下,所有文件的顯示和處理方式。總的來說:自己從頭編不是小工程,不過現在也沒有人從頭編,站在巨人的肩膀上才能走的遠。所以我建議你參考其他人的源程序,進行修改移植,這樣你既可以完成工程量也可以達到效果,不過一定要有一些調試程序的經驗和基礎。註:如需源程序,留郵箱或站內聯系源碼已經發送至你郵箱,是我原來一個工程的一部分,沒有分離完全,不過VC++6.0調試通過,好好看看吧,就是你要的功能。
㈦ 如何用批處理判斷不同目錄下的兩個文件的文件名相同
不清楚你的實際文件/情況,僅以問題中的樣例/說明為據
復制粘貼到記事本,另存為xx.bat,編碼選ANSI
@echo off
rem 檢測判斷兩個文件夾里是否存在相同名稱的文件
set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%@% %z%
set "folder1=D:\xxx\A"
set "folder2=D:\xxx\B"
set isexist=false
for /f "delims=" %%a in ('dir /a-d/b "%folder1%\"') do (
if exist "%folder2%\%%~nxa" (
echo;"%folder1%\%%~nxa" ^<--^> "%folder2%\%%~nxa"
set isexist=true
)
)
echo;%isexist%
echo;%#% +%$%%$%/%@% %z%
pause
exit
㈧ 比較兩個文件夾下的所有文件是否都相同
先用tree /f 導出目錄結構及文件,再用fc命令進行對比。如要比較d盤和E盤,可以用:tree d:\ /f >>d.txt
tree e:\ /f >>e.txt
fc d.txt e.txt
㈨ java如何判斷倆個文件是否相同的
//判斷的辦法是分別將兩個文件讀進來
//先判斷著兩個文件的長度,如果長度不一樣,那肯定不一樣
//如果兩個文件的長度(大小)一樣,那麼就對文件中的每一個位元組進行比對
//只要有一個位元組不同,兩個文件就不同。
//否則兩個文件就是相同的
//代碼如下:(JDK1.4+)(代碼格式被吃掉了,請自己手工排一下)
package 兲髙亻壬鳥飛;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class Answer1 {
public static void main(String[] args) {
//文件名要用絕對路徑
//相對路徑也可以,但是容易弄錯
String fileName1 = "xxx";//寫你需要判斷的第一個文件的文件名
String fileName2 = "yyy";//寫你需要判斷的第二個文件的文件名
FileInputStream fis1 = null;
FileInputStream fis2 = null;
try {
fis1 = new FileInputStream(fileName1);
fis2 = new FileInputStream(fileName2);
int len1 = fis1.available();
int len2 = fis2.available();
if (len1 == len2) {//長度相同,則比較具體內容
//建立兩個位元組緩沖區
byte[] data1 = new byte[len1];
byte[] data2 = new byte[len2];
//分別將兩個文件的內容讀入緩沖區
fis1.read(data1);
fis2.read(data2);
//依次比較文件中的每一個位元組
for (int i=0; i<len1; i++) {
//只要有一個位元組不同,兩個文件就不一樣
if (data1[i] != data2[i]) {
System.out.println("文件內容不一樣");
return;
}
}
System.out.println("兩個文件完全相同");
} else {
//長度不一樣,文件肯定不同
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {//關閉文件流,防止內存泄漏
if (fis1 != null) {
try {
fis1.close();
} catch (IOException e) {
//忽略
e.printStackTrace();
}
}
if (fis2 != null) {
try {
fis2.close();
} catch (IOException e) {
//忽略
e.printStackTrace();
}
}
}
}
}
㈩ XP中的cmd怎麼對比兩個文件是否相同
@echo off
:: 比較A文件夾和文件夾下文件名的異同(A和B文件夾下均無子目錄)
:: 如果有不同,A文件夾中不同的寫入a.txt,B文件夾中不同的寫入b.txt
:: 相同部分的文件名寫入c.txt
:: code by jm 2006-8 CMD@XP
cd.>a.txt
cd.>b.txt
cd.>c.txt
dir /a-d /b "A文件夾的路徑">list_a.txt
dir /a-d /b "B文件夾的路徑">list_b.txt
for /f "delims=" %%i in (list_a.txt) do (
find "%%i" list_b.txt>nul 2>nul && echo %%i>>c.txt || echo %%i>>a.txt
)
for /f "delims=" %%i in (list_b.txt) do (
find "%%i" list_a.txt>nul 2>nul || echo %%i>>b.txt
)
del /q list_a.txt>nul 2>nul
del /q list_b.txt>nul 2>nul
start a.txt
start b.txt
start c.txt
goto :eof另外一種更簡潔的方案是:
:: 參照了3742668版主的思路
@echo off
cd.>a.txt
cd.>b.txt
cd.>c.txt
dir /a-d /b "A文件夾的路徑">list_a.txt
dir /a-d /b "B文件夾的路徑">list_b.txt
findstr /v /x /g:list_b.txt list_a.txt>a.txt
findstr /v /x /g:list_a.txt list_b.txt>b.txt
findstr /x /g:list_a.txt list_b.txt>c.txt