PDA

View Full Version : حذف از یک فایل xml



farideh gh
سه شنبه 10 آذر 1394, 09:04 صبح
سلام من میخوام یه برنامه بنویسم که بتونه یه سری کد که از بارکدخوان خوانده شده و در یک فایل ذخیره شده را در یک فایل xml دیگر جستجو کند و در صورت وجود حذف کند یا اینکه در صورت وجود نگه داری شود و مابقی کدها حذف شود به کمک نیاز دارم

amirtork
سه شنبه 10 آذر 1394, 20:54 عصر
سلام،
در کدوم مرحله از انجام پروژه به مشکل برخوردید؟
برای بدست آوردن راهنمایی های بهتر و دقیق تر پیشنهاد میکنم کد هایی رو که تا اینجای پروژه نوشتید رو قرار بدید(ضمیمه کنید)

farideh gh
شنبه 14 آذر 1394, 09:20 صبح
راستش می خوام اگه میشه لطف کنید از اول مرحله به مرحله راهنماییم کنید چون خیلی از برنامه نویسی فاصله گرفتم تقریبا فراموش کردم ممنون میشم

amirtork
شنبه 14 آذر 1394, 20:51 عصر
برای انجام این کار با نحوه ی استفاده از بارکد خوان رو در C++‎‎‎ بدونید،
برای توضیحات بیشتر در این مورد میتونید به این لینک (https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&ved=0ahUKEwjV6p3uosXJAhXBtQ8KHY8rAMYQFggkMAE&url=https%3A%2F%2Fmsdn.microsoft.com%2Fen-us%2Flibrary%2F80db3kax.aspx&usg=AFQjCNHUs5txHhQ6TVm01iAnXFGcSVY7iw&sig2=bBrWJNQ_06n_pkZIrjS-4w) مراجعه کنید و به صورت خلاصه تر میتونید به این تاپیک (http://www.codeguru.com/cpp/w-p/clipboard/article.php/c3011/ReadWrite-text-on-clipboard.htm) مراجعه کنید(برای ویندوز، اگر سیستم لینوکس یا OSX هست دیگه نمیشه از این API استفاده کرد و باید روش رو عوض کرد که اگر لازم هست بگید که روی اون سیستم عامل صحبت کنیم)
نکته ای که میتونه مورد توجه قرار بگیره این هست که بارکد خوان کد خوانده شده رو در بافر کیبرد ‌ذخیره میکنه... .
و حالا با استفاده از تابع find در std::string(اطلاعات بیشتر در این لینک (http://www.cplusplus.com/reference/string/string/find/)) فایل XML رو خط به خط پیمایش کنید و حالا عمل مورد نظرتون رو انجام بدید.
این روش ساده ای هست که میتونید در پیش بگیرید و اگر در انجام این کار به مشکلی خوردید، یا بخشی رو از روند کار رو هنوز متوجه نشدید، بفرمایید، در حد توان من یا دوستان دیگه کمک میکنیم.

farideh gh
یک شنبه 15 آذر 1394, 11:29 صبح
خیلی ممنون فقط من الان اگه نخوام از بارکد خوان خونده بشه واز یک فایل که اطلاعات بارکد خوان داخلش ذخیره شده بخونه باید چیکار کنم؟:متفکر:

amirtork
یک شنبه 15 آذر 1394, 20:54 عصر
خب کار راحت تر شد!
به جای اینکه از بافر بخواید کد رو استخراج کنید و جست و جو رو انجام بدید،
هر خط از اطلاعات فایل حاوی اطلاعات خوانده شده از بار کد (input) رو که حاوی اون چیزی هست که باید در فایل XML جست و جو بشه رو با تابع string::find پیمایش کنید و عمل دلخواهتون رو انجام بدید.
این شبه کد رو ببینید،
شکل کلی برنامه یک چیزی شبیه این خواهد بود:


string oBuffer;
string iBuffer;
while(is_good(input))
{
iBuffer = read line from input;
while(is_good(XML))
{
oBuffer = read line from XML;

while(oBuffer = read line from XML
{
if (oBuffer.find(search, 0) != string::npos) {
cout << "found";
}
}
}