1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
|
<?xml version="1.0"?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
<refentry id="libenca-Analyser">
<refmeta>
<refentrytitle role="top_of_page" id="libenca-Analyser.top_of_page">Analyser</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>LIBENCA Library</refmiscinfo>
</refmeta>
<refnamediv>
<refname>Analyser</refname>
<refpurpose>Basic analyser interface.</refpurpose>
</refnamediv>
<refsect1 id="libenca-Analyser.description" role="desc">
<title role="desc.title">Description</title>
<para>Basically you want to allocate an analyser with <link linkend="enca-analyser-alloc"><function>enca_analyser_alloc()</function></link> for some
language, use <link linkend="enca-analyse"><function>enca_analyse()</function></link> (or <link linkend="enca-analyse-const"><function>enca_analyse_const()</function></link>) on a buffer to find its
encoding, and interpret the results with something like <link linkend="enca-charset-name"><function>enca_charset_name()</function></link>.
The analyser then can be used for another buffer. Once you no longer need
it, call <link linkend="enca-analyser-free"><function>enca_analyser_free()</function></link> to release it.
A single working example is better than a hundred pages of reference manual.</para>
<para>A minimal Enca library application – Czech encoding detector.</para>
<informalexample><programlisting role="example"><![CDATA[
#include <stdio.h>
#include <enca.h>
int main(void)
{
EncaAnalyser analyser;
EncaEncoding encoding;
unsigned char buffer[4096];
size_t buflen;
buflen = fread(buffer, 1, 4096, stdin);
analyser = enca_analyser_alloc("cs");
encoding = enca_analyse(analyser, buffer, buflen);
printf("Charset: %s\n", enca_charset_name(encoding.charset,
ENCA_NAME_STYLE_HUMAN));
enca_analyser_free(analyser);
return 0;
}
]]></programlisting></informalexample>
<para></para>
</refsect1>
<refsect1 id="libenca-Analyser.functions_details" role="details">
<title role="details.title">Functions</title>
<para />
</refsect1>
</refentry>
|