Thanks, it works!!<br><br><div class="gmail_quote">2012/2/28 Even Rouault <span dir="ltr">&lt;<a href="mailto:even.rouault@mines-paris.org">even.rouault@mines-paris.org</a>&gt;</span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Selon Stefan Röckelein &lt;<a href="mailto:sroeckelein@gmail.com">sroeckelein@gmail.com</a>&gt;:<br>
<div><div class="h5"><br>
&gt; Hi,<br>
&gt;<br>
&gt; the usual procedure to open a file with OGR is to use<br>
&gt; OGRSFDriverRegistrar::Open(&quot;somefile.dxf&quot;,FALSE)<br>
&gt; Now I want to open a DXF-file which was previously stored in a database.<br>
&gt; Therefore I would need some ORG method which reads the drawing not from a<br>
&gt; file, but from a string (containing the whole DXF-file) directly.<br>
&gt; Is it possible to do this somehow?<br>
&gt;<br>
&gt; An alternative could be to save and read an OGRDataSource object inside the<br>
&gt; database. Is this possible?<br>
<br>
</div></div>The DXF driver use the CPL Virtual File I/O API, so you can read from a<br>
in-memory file created with VSIFileFromMemBuffer for example ( see<br>
<a href="http://gdal.org/cpl__vsi_8h.html#af9c1b931449d423e7a80bacb75ff0717" target="_blank">http://gdal.org/cpl__vsi_8h.html#af9c1b931449d423e7a80bacb75ff0717</a> )<br>
<br>
The code to use would be something like :<br>
<br>
char* pszTheDXFContent = &quot;a_string_with_the_dxf_file&quot;;<br>
VSILFILE* fpMem = VSIFileFromMemBuffer (&quot;/vsimem/temp.dxf&quot;, pszTheDXFContent,<br>
strlen(pszTheDXFContent), FALSE );<br>
VSIFCloseL(fpMem);<br>
OGRDataSource* poDS = OGRSFDriverRegistrar::Open(&quot;/vsimem/temp.dxf&quot;,FALSE);<br>
<br>
/* do something */<br>
<br>
OGRSFDriverRegistrar::ReleaseDataSource(poDS);<br>
VSIUnlink(&quot;/vsimem/temp.dxf&quot;);<br>
<br>
&gt;<br>
&gt; Stefan<br>
&gt;<br>
<br>
<br>
</blockquote></div><br>