Единственный, который работал на меня.
http://sourceforge.net/apps/trac/syncmldotnet/wiki/Quoted%20Printable
Если вам просто нужно декодировать QP, потяните в свой код эти три функции по ссылке выше:
HexDecoderEvaluator(Match m)
HexDecoder(string line)
Decode(string encodedText)
А потом просто:
var humanReadable = Decode(myQPString);
Наслаждайтесь
Вы можете написать свою собственную чистую и сделать ее пререквизитом общей чистки.
clean: myclean myclean: rm whatever
Ваша будет работать первой. Если по какой-то причине вы хотите, чтобы сначала выполнялась обычная очистка, решение будет более сложным.
РЕДАКТИРОВАТЬ:
Вот лучшее решение, которое я вижу, которое выполняет общее правило перед локальным:
include Makefile.common
clean:
$(MAKE) -f Makefile.common $@
rm whatever additional things
Директива include
необходима, поскольку локальный make-файл полагается на общую директиву для других вещей, кроме clean
. Локальное правило clean
отменяет общее правило clean
, но вызывает общее правило clean
перед выполнением дополнительной работы. (Это переопределение вызовет некоторые предупреждения, что является неприятностью; я не знаю, как их заставить замолчать.)
Похоже, правило общего make-файла должно называться как-то вроде common-clean
. Затем каждый основной make-файл объявляет свое чистое правило как
clean: common-clean
, и все готово.
Если это не вариант, вы можете взглянуть на правила двойного двоеточия , но они вводят целый ряд других вопросов, которые необходимо рассмотреть.
Я видел это в нескольких магазинах. Наиболее распространенный подход - использовать правила с двойным двоеточием, если вы используете что-то вроде GNU make. В вашем общем make-файле у вас будет что-то вроде этого:
clean::
# standard cleanup, like remove all .o's:
rm -f *.o
Обратите внимание, что за clean
идут два двоеточия, а не только один!
В другом вашем файле makefile вы снова просто объявляете clean
как правило с двумя двоеточиями:
clean::
# custom cleanup, like remove my special generated files:
rm -f *.h.gen
Когда вы вызываете make clean
, GNU make автоматически запускает оба из них » ветки »правила очистки:
% make clean
rm -f *.o
rm -f *.h.gen
Я думаю, он прост в настройке и довольно аккуратно составляет. Обратите внимание, что именно потому, что это правило с двумя двоеточиями, вы не получаете ошибок «переопределения команд», которые обычно возникают при определении двух правил для одной и той же цели. Который'