Если ваш код имеет new FileStream
, перейдите в MemoryStream
, который вы уже создали. (Не просто создайте его встроенным в вызове PdfWriter.GetInstance
- вы захотите иметь возможность ссылаться на него позже.)
Затем вызовите ToArray()
на MemoryStream
, когда вы закончили писать, чтобы получить byte[]
:
using (MemoryStream output = new MemoryStream())
{
PdfWriter wri = PdfWriter.GetInstance(doc, output);
// Write to document
// ...
return output.ToArray();
}
Я не использовал iTextSharp, но я подозреваю некоторые из этих типов IDisposable
- и в этом случае вы должны создавать их также в using
.
Используйте обратную косую черту для экранирования символа. Например:
/\\d/
Это будет соответствовать \ d вместо числового символа
. С помощью \
вы экранируете специальные символы.
Преобразует специальные символы в буквальные, а буквенные в специальные.
Например: / (s) / соответствует '(s)', а / (\ s) / соответствует любому пробелу и фиксирует совпадение.
Источник: http://www.javascriptkit.com/javatutors/redev2.shtml