Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions apetsenak/src/lab9jd2/Task.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package lab9jd2;

/**
* Напишите программу, преобразующую созданный в предыдущих за-даниях xml файл в html,
* аналогично данному примеру, в каждой ячейке дополнительно к координате
* должны выводиться единицы измерения. Результат должен записываться в файл на диске.
*/
public class Task {
public static void main(String[] args) {
XMLTransformer transformer = new XMLTransformer();
transformer.transformToHTML("./apetsenak/src/lab9jd2/point.xml",
"./apetsenak/src/lab9jd2/point.xsl",
"./apetsenak/src/lab9jd2/point.html");
}
}
28 changes: 28 additions & 0 deletions apetsenak/src/lab9jd2/XMLTransformer.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
package lab9jd2;


import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;

public class XMLTransformer {
public void transformToHTML(String nameXMLFile, String nameXSLFile, String nameHTMLFile) {
try {
StreamSource streamSource = new StreamSource(new File(nameXSLFile));
Transformer transformer = TransformerFactory.newInstance().newTemplates(streamSource).newTransformer();
transformer.transform(new StreamSource(new File(nameXMLFile)), new StreamResult(new FileOutputStream(new File(nameHTMLFile))));
} catch (TransformerConfigurationException e) {
e.printStackTrace();
} catch (TransformerException e) {
e.printStackTrace();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
47 changes: 47 additions & 0 deletions apetsenak/src/lab9jd2/point.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
<html>
<body>
<p>Points</p>
<tr>
<td>10<br>
</td><td>20<br>
</td><td>sm<br>
</td>
<br>
</tr>
<tr>
<td>3<br>
</td><td>5<br>
</td><td>mm<br>
</td>
<br>
</tr>
<tr>
<td>600<br>
</td><td>500<br>
</td><td>px<br>
</td>
<br>
</tr>
<tr>
<td>23<br>
</td><td>43<br>
</td><td>mm<br>
</td>
<br>
</tr>
<tr>
<td>12<br>
</td><td>13<br>
</td><td>mm<br>
</td>
<br>
</tr>
<tr>
<td>7<br>
</td><td>9<br>
</td><td>sm<br>
</td>
<br>
</tr>
</body>
</html>
27 changes: 27 additions & 0 deletions apetsenak/src/lab9jd2/point.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<pointList>
<point units="sm">
<x>10</x>
<y>20</y>
</point>
<point units="mm">
<x>3</x>
<y>5</y>
</point>
<point units="px">
<x>600</x>
<y>500</y>
</point>
<point units="mm">
<x>23</x>
<y>43</y>
</point>
<point units="mm">
<x>12</x>
<y>13</y>
</point>
<point units="sm">
<x>7</x>
<y>9</y>
</point>
</pointList>
27 changes: 27 additions & 0 deletions apetsenak/src/lab9jd2/point.xsl
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<p>Points</p>
<xsl:for-each select="pointList/point">
<tr>
<td>
<xsl:value-of select="x"/>
<br/>
</td>
<td>
<xsl:value-of select="y"/>
<br/>
</td>
<td>
<xsl:value-of select="@units"/>
<br/>
</td>
<br/>
</tr>
</xsl:for-each>
</body>
</html>
</xsl:template>
</xsl:stylesheet>