#include <iostream>
#include <string>
//#include <fstream>
void htmlencode( std:: string & s)
{
std:: string :: size_type pos = 0 ;
while ( ( pos = s.find_first_of ( "<>&" , pos) ) ! = std:: string :: npos )
{
std:: string replacement;
switch ( s[ pos] )
{
case '<' :
replacement = "<" ;
break ;
case '>' :
replacement = ">" ;
break ;
case '&' :
replacement = "&" ;
break ;
}
s.replace ( pos, 1 , replacement) ;
pos + = replacement.size ( ) ;
}
}
int main( )
{
std:: string fn = "" ; //argv[1];
std:: istream & txtFile = std:: cin ; //std::ifstream txtFile(fn);
//if (txtFile)
{
std:: string fileName = fn.substr ( 0 , fn.rfind ( '.' ) ) ;
std:: ostream & html = std:: cout ; //std::ofstream html(fileName + "1.html");
//if (html)
{
html << "<HTML>\n "
<< "<head>\n "
<< "<title>" ;
std:: string line;
if ( std:: getline ( txtFile, line) )
{
htmlencode( line) ;
html << line;
}
html << "</title>\n "
<< "</head>\n "
<< "<body>\n " ;
bool lastLineNotEmpty = false ;
while ( std:: getline ( txtFile, line) )
{
if ( line.empty ( ) )
{
if ( lastLineNotEmpty)
html << "<br>\n " ;
html << "<br>\n " ;
lastLineNotEmpty = false ;
}
else
{
if ( lastLineNotEmpty)
html << '\n ' ;
htmlencode( line) ;
html << line;
lastLineNotEmpty = true ;
}
}
if ( lastLineNotEmpty)
html << "<br>\n " ;
html << "</body>\n "
<< "</html>\n " ;
}
}
return 0 ;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgovLyNpbmNsdWRlIDxmc3RyZWFtPgoKdm9pZCBodG1sZW5jb2RlKHN0ZDo6c3RyaW5nICZzKQp7CiAgICBzdGQ6OnN0cmluZzo6c2l6ZV90eXBlIHBvcyA9IDA7CiAgICB3aGlsZSAoKHBvcyA9IHMuZmluZF9maXJzdF9vZigiPD4mIiwgcG9zKSkgIT0gc3RkOjpzdHJpbmc6Om5wb3MpCiAgICB7CiAgICAgICAgc3RkOjpzdHJpbmcgcmVwbGFjZW1lbnQ7CiAgICAgICAgc3dpdGNoIChzW3Bvc10pCiAgICAgICAgewogICAgICAgICAgICBjYXNlICc8JzoKICAgICAgICAgICAgICAgIHJlcGxhY2VtZW50ID0gIiZsdDsiOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgJz4nOgogICAgICAgICAgICAgICAgcmVwbGFjZW1lbnQgPSAiJmd0OyI7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAnJic6CiAgICAgICAgICAgICAgICByZXBsYWNlbWVudCA9ICImYW1wOyI7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgICAgcy5yZXBsYWNlKHBvcywgMSwgcmVwbGFjZW1lbnQpOwogICAgICAgIHBvcyArPSByZXBsYWNlbWVudC5zaXplKCk7CiAgICB9Cn0KCmludCBtYWluKCkKewogICAgc3RkOjpzdHJpbmcgZm4gPSAiIjsvL2FyZ3ZbMV07CgogICAgc3RkOjppc3RyZWFtICZ0eHRGaWxlID0gc3RkOjpjaW47Ly9zdGQ6Omlmc3RyZWFtIHR4dEZpbGUoZm4pOwogICAgLy9pZiAodHh0RmlsZSkKICAgIHsKICAgICAgICBzdGQ6OnN0cmluZyBmaWxlTmFtZSA9IGZuLnN1YnN0cigwLCBmbi5yZmluZCgnLicpKTsKCiAgICAgICAgc3RkOjpvc3RyZWFtICZodG1sID0gc3RkOjpjb3V0Oy8vc3RkOjpvZnN0cmVhbSBodG1sKGZpbGVOYW1lICsgIjEuaHRtbCIpOwogICAgICAgIC8vaWYgKGh0bWwpCiAgICAgICAgewogICAgICAgICAgICBodG1sIDw8ICI8SFRNTD5cbiIKICAgICAgICAgICAgICAgIDw8ICI8aGVhZD5cbiIKICAgICAgICAgICAgICAgIDw8ICI8dGl0bGU+IjsKICAgICAgICAgICAgc3RkOjpzdHJpbmcgbGluZTsKICAgICAgICAgICAgaWYgKHN0ZDo6Z2V0bGluZSh0eHRGaWxlLCBsaW5lKSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgaHRtbGVuY29kZShsaW5lKTsKICAgICAgICAgICAgICAgIGh0bWwgPDwgbGluZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBodG1sIDw8ICI8L3RpdGxlPlxuIgogICAgICAgICAgICAgICAgPDwgIjwvaGVhZD5cbiIKICAgICAgICAgICAgICAgIDw8ICI8Ym9keT5cbiI7CiAgICAgICAgICAgIGJvb2wgbGFzdExpbmVOb3RFbXB0eSA9IGZhbHNlOwogICAgICAgICAgICB3aGlsZSAoc3RkOjpnZXRsaW5lKHR4dEZpbGUsIGxpbmUpKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBpZiAobGluZS5lbXB0eSgpKQogICAgICAgICAgICAgICAgewoJCQkJCWlmIChsYXN0TGluZU5vdEVtcHR5KQoJCQkJCQlodG1sIDw8ICI8YnI+XG4iOwoJCQkJCWh0bWwgPDwgIjxicj5cbiI7CgkJCQkJbGFzdExpbmVOb3RFbXB0eSA9IGZhbHNlOwoJCQkJfQogICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgewoJCQkJCWlmIChsYXN0TGluZU5vdEVtcHR5KQogICAgICAgICAgICAgICAgICAgIAlodG1sIDw8ICdcbic7CiAgICAgICAgICAgICAgICAgICAgaHRtbGVuY29kZShsaW5lKTsKICAgICAgICAgICAgICAgICAgICBodG1sIDw8IGxpbmU7CgkJCQkJbGFzdExpbmVOb3RFbXB0eSA9IHRydWU7CgkJCQl9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGxhc3RMaW5lTm90RW1wdHkpCiAgICAgICAgICAgICAgICBodG1sIDw8ICI8YnI+XG4iOwogICAgICAgICAgICBodG1sIDw8ICI8L2JvZHk+XG4iCiAgICAgICAgICAgICAgICA8PCAiPC9odG1sPlxuIjsKICAgICAgICB9CiAgICB9CiAgICByZXR1cm4gMDsKfQ==
stdin
QXJlIFRoZXNlIEFsaWVucyBNYXJ0aWFucz8KCgphbiBhZGFwdGF0aW9uCgpUaGUgbWVuIGZyb20gRWFydGggc3RhcmVkIGF0IHRoZSBhbGllbnMuClRoZSBsaXR0bGUgZ3JlZW4gbWVuIGhhZCBwb2ludGVkIGhlYWRzIGFuZApvcmFuZ2UgdG9lcyB3aXRoIG9uZSBsb25nIGN1cmx5IGhhaXIgb24gZWFjaCB0b2UuCgpILiBHLiBXZWxscycgbm92ZWwgVGhlIFdhciBvZiB0aGUgV29ybGRzICgxODk4KQpoYXMgaGFkIGFuIGV4dHJhb3JkaW5hcnkgaW5mbHVlbmNlIG9uIHNjaWVuY2UgZmljdGlvbi4gCldlbGxzJyBNYXJ0aWFucyBhcmUgYSB0ZWNobm9sb2dpY2FsbHkgYWR2YW5jZWQgc3BlY2llcwp3aXRoIGFuIGFuY2llbnQgY2l2aWxpemF0aW9uLiBUaGV5IHNvbWV3aGF0IHJlc2VtYmxlCmNlcGhhbG9wb2RzLCB3aXRoIGxhcmdlLCBidWxreSBicm93biBib2RpZXMgYW5kCnNpeHRlZW4gc25ha2UtbGlrZSB0ZW50YWNsZXMsIGluIHR3byBncm91cHMgb2YgZWlnaHQsCmFyb3VuZCBhIHF1aXZlcmluZyBWLXNoYXBlZCBtb3V0aDsgdGhleSBtb3ZlIGFyb3VuZCBpbgoxMDAgZmVldCB0YWxsIHRyaXBvZCBmaWdodGluZy1tYWNoaW5lcyB0aGV5IGFzc2VtYmxlCnVwb24gbGFuZGluZywga2lsbGluZyBldmVyeXRoaW5nIGluIHRoZWlyIHBhdGguCgoKCmJ5IHlvdXIgbmFtZQo=
Are These Aliens Martians?
an adaptation
The men from Earth stared at the aliens.
The little green men had pointed heads and
orange toes with one long curly hair on each toe.
H. G. Wells' novel The War of the Worlds (1898)
has had an extraordinary influence on science fiction.
Wells' Martians are a technologically advanced species
with an ancient civilization. They somewhat resemble
cephalopods, with large, bulky brown bodies and
sixteen snake-like tentacles, in two groups of eight,
around a quivering V-shaped mouth; they move around in
100 feet tall tripod fighting-machines they assemble
upon landing, killing everything in their path.
by your name
stdout
<HTML>
<head>
<title>Are These Aliens Martians?</title>
</head>
<body>
<br>
<br>
an adaptation<br>
<br>
The men from Earth stared at the aliens.
The little green men had pointed heads and
orange toes with one long curly hair on each toe.<br>
<br>
H. G. Wells' novel The War of the Worlds (1898)
has had an extraordinary influence on science fiction.
Wells' Martians are a technologically advanced species
with an ancient civilization. They somewhat resemble
cephalopods, with large, bulky brown bodies and
sixteen snake-like tentacles, in two groups of eight,
around a quivering V-shaped mouth; they move around in
100 feet tall tripod fighting-machines they assemble
upon landing, killing everything in their path.<br>
<br>
<br>
<br>
by your name<br>
</body>
</html>