473,735 Members | 6,432 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

How to Concat in XSLT

Hi all,

I'm new in xslt and xpath, so my question might be simple but i'm
learning.

I have an XML document and need to transform it into another XML, I use
xslt and it works, but there is a case that i don't know how to solve,
I need to concat a string from multiple childs into a standard way, the
following is an example of the source and the target XML.

Source:

<Root>
<ParentElementX >
<ChildElement >
<Value>1</Value>
<Value>2</Value>
<Value>3</Value>
<ChildElement >
<ChildElement >
<Value>4</Value>
<Value>5</Value>
<Value>6</Value>
<ChildElement >

</ParentElementX>
<ParentElementX >
<ChildElement >
<Value>1</Value>
<Value>2</Value>
<Value>3</Value>
<ChildElement >
</ParentElementX>
</Root>

Destination:

<Root>
<ParentElementX >
<ChildElement >1/2/3</ChildElement>
<ChildElement >4/56<ChildElement >
</ParentElementX>
<ParentElementX >
<ChildElement >1/2/3<ChildElement >
</ParentElementX>
</Root>

Please tell me what is the xslt code I need to write to transform this?

Thanks,
Zaid H. Safadi

Jan 26 '07 #1
8 15900

On Jan 26, 12:53 pm, "Hercules Dev." <zsaf...@hotmai l.com>
wrote:
Source:

<Root>
<ParentElementX >
<ChildElement >
<Value>1</Value>
<Value>2</Value>
<Value>3</Value>
<ChildElement >
<ChildElement >
<Value>4</Value>
<Value>5</Value>
<Value>6</Value>
<ChildElement >

</ParentElementX>
<ParentElementX >
<ChildElement >
<Value>1</Value>
<Value>2</Value>
<Value>3</Value>
<ChildElement >
</ParentElementX>
</Root>

Destination:

<Root>
<ParentElementX >
<ChildElement >1/2/3</ChildElement>
<ChildElement >4/56<ChildElement >
</ParentElementX>
<ParentElementX >
<ChildElement >1/2/3<ChildElement >
</ParentElementX>
</Root>

Please tell me what is the xslt code I need to write to
transform this?
You can't, because the source you provided is not
well-formed XML. So unless you write your own parser that
would transform this proprietary document into XML DOM that
your XSLT would grok, it's simply impossible.

Even if you write your own parser, I'm not really certain
how did you get to '4/56' as content for the second
ChildElement element in your resulting document.

Now, if you were using well-formed XML, I suppose you could
do something like this:

<xsl:styleshe et version="1.0"
xmlns:xsl="http ://www.w3.org/1999/XSL/Transform">
<xsl:template match="@*|node( )">
<xsl:copy>
<xsl:apply-templates select="@*|node ()"/>
</xsl:copy>
</xsl:template>
<xsl:template
match="Value[not(preceding-sibling::Value)]">
<xsl:apply-templates select="text()"/>
<xsl:apply-templates
select="followi ng-sibling::*[self::Value]"
mode="append"/>
</xsl:template>
<xsl:template match="Value[preceding-sibling::Value]"/>
<xsl:template match="*" mode="append">
<xsl:text>/</xsl:text>
<xsl:apply-templates select="text()"/>
</xsl:template>
</xsl:stylesheet>

(Hint: posting sloppy examples is not a very good idea if
you're asking for help.)

--
Pavel Lepin

Jan 26 '07 #2
As XSLT 2.0 has just been released a couple of days ago, here it an
XSLT 2.0 solution. To concatenate all the values separated with slashes
it just needs
<xsl:value-of select="Value" separator="/"/>
<xsl:styleshe et version="2.0"
xmlns:xsl="http ://www.w3.org/1999/XSL/Transform">
<xsl:template match="@*|node( )">
<xsl:copy>
<xsl:apply-templates select="@*|node ()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="ChildEle ment">
<xsl:copy>
<xsl:value-of select="Value" separator="/"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>

Regards,
George
---------------------------------------------------------------------
George Cristian Bina
<oXygen/XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com

On Jan 26, 1:56 pm, p.le...@ctncorp .com wrote:
On Jan 26, 12:53 pm, "Hercules Dev." <zsaf...@hotmai l.com>
wrote:
Source:
<Root>
<ParentElementX >
<ChildElement >
<Value>1</Value>
<Value>2</Value>
<Value>3</Value>
<ChildElement >
<ChildElement >
<Value>4</Value>
<Value>5</Value>
<Value>6</Value>
<ChildElement >
</ParentElementX>
<ParentElementX >
<ChildElement >
<Value>1</Value>
<Value>2</Value>
<Value>3</Value>
<ChildElement >
</ParentElementX>
</Root>
Destination:
<Root>
<ParentElementX >
<ChildElement >1/2/3</ChildElement>
<ChildElement >4/56<ChildElement >
</ParentElementX>
<ParentElementX >
<ChildElement >1/2/3<ChildElement >
</ParentElementX>
</Root>
Please tell me what is the xslt code I need to write to
transform this?You can't, because the source you provided is not
well-formed XML. So unless you write your own parser that
would transform this proprietary document into XML DOM that
your XSLT would grok, it's simply impossible.

Even if you write your own parser, I'm not really certain
how did you get to '4/56' as content for the second
ChildElement element in your resulting document.

Now, if you were using well-formed XML, I suppose you could
do something like this:

<xsl:styleshe et version="1.0"
xmlns:xsl="http ://www.w3.org/1999/XSL/Transform">
<xsl:template match="@*|node( )">
<xsl:copy>
<xsl:apply-templates select="@*|node ()"/>
</xsl:copy>
</xsl:template>
<xsl:template
match="Value[not(preceding-sibling::Value)]">
<xsl:apply-templates select="text()"/>
<xsl:apply-templates
select="followi ng-sibling::*[self::Value]"
mode="append"/>
</xsl:template>
<xsl:template match="Value[preceding-sibling::Value]"/>
<xsl:template match="*" mode="append">
<xsl:text>/</xsl:text>
<xsl:apply-templates select="text()"/>
</xsl:template>
</xsl:stylesheet>

(Hint: posting sloppy examples is not a very good idea if
you're asking for help.)

--
Pavel Lepin
Jan 26 '07 #3

Pavel Lepin,
Thanks for your reply, this is exactly what I wanted and sorry for my
bad source example I usually don't post such bad examples.

Your code worked well with my example but I didn't know how to
integrate it with my already existent XLST code, so I had to perform
two transformations for both using both XSLT, so to solve this I need
to understand your XSLT, is there any good reference you know that can
help me to understand this XSLT code?

Also if you can explain even if a little of it then it will be great.

Thanks anyway,
Zaid H. Safadi
On Jan 26, 1:56 pm, p.le...@ctncorp .com wrote:
On Jan 26, 12:53 pm, "Hercules Dev." <zsaf...@hotmai l.com>
wrote:


Source:
<Root>
<ParentElementX >
<ChildElement >
<Value>1</Value>
<Value>2</Value>
<Value>3</Value>
<ChildElement >
<ChildElement >
<Value>4</Value>
<Value>5</Value>
<Value>6</Value>
<ChildElement >
</ParentElementX>
<ParentElementX >
<ChildElement >
<Value>1</Value>
<Value>2</Value>
<Value>3</Value>
<ChildElement >
</ParentElementX>
</Root>
Destination:
<Root>
<ParentElementX >
<ChildElement >1/2/3</ChildElement>
<ChildElement >4/56<ChildElement >
</ParentElementX>
<ParentElementX >
<ChildElement >1/2/3<ChildElement >
</ParentElementX>
</Root>
Please tell me what is the xslt code I need to write to
transform this?You can't, because the source you provided is not
well-formed XML. So unless you write your own parser that
would transform this proprietary document into XML DOM that
your XSLT would grok, it's simply impossible.

Even if you write your own parser, I'm not really certain
how did you get to '4/56' as content for the second
ChildElement element in your resulting document.

Now, if you were using well-formed XML, I suppose you could
do something like this:

<xsl:styleshe et version="1.0"
xmlns:xsl="http ://www.w3.org/1999/XSL/Transform">
<xsl:template match="@*|node( )">
<xsl:copy>
<xsl:apply-templates select="@*|node ()"/>
</xsl:copy>
</xsl:template>
<xsl:template
match="Value[not(preceding-sibling::Value)]">
<xsl:apply-templates select="text()"/>
<xsl:apply-templates
select="followi ng-sibling::*[self::Value]"
mode="append"/>
</xsl:template>
<xsl:template match="Value[preceding-sibling::Value]"/>
<xsl:template match="*" mode="append">
<xsl:text>/</xsl:text>
<xsl:apply-templates select="text()"/>
</xsl:template>
</xsl:stylesheet>

(Hint: posting sloppy examples is not a very good idea if
you're asking for help.)

--
Pavel Lepin- Hide quoted text -- Show quoted text -
Jan 26 '07 #4
George,

Thanks for your reply, I'm using the .NET Framework 1.1 engine for XSLT
transformation so i don't think it support XSLT 2.0, I'm already
planning to convert my work to .NET 2.0 so maybe i can make use of the
new features of XSLT 2.0

Thanks,
Zaid H. Safadi

On Jan 26, 2:12 pm, "George Bina" <geo...@oxygenx ml.comwrote:
As XSLT 2.0 has just been released a couple of days ago, here it an
XSLT 2.0 solution. To concatenate all the values separated with slashes
it just needs
<xsl:value-of select="Value" separator="/"/>

<xsl:styleshe et version="2.0"
xmlns:xsl="http ://www.w3.org/1999/XSL/Transform">
<xsl:template match="@*|node( )">
<xsl:copy>
<xsl:apply-templates select="@*|node ()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="ChildEle ment">
<xsl:copy>
<xsl:value-of select="Value" separator="/"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>

Regards,
George
---------------------------------------------------------------------
George Cristian Bina
<oXygen/XML Editor, Schema Editor and XSLT Editor/Debuggerhttp://www.oxygenxml.c om

On Jan 26, 1:56 pm, p.le...@ctncorp .com wrote:
On Jan 26, 12:53 pm, "Hercules Dev." <zsaf...@hotmai l.com>
wrote:
Source:
<Root>
<ParentElementX >
<ChildElement >
<Value>1</Value>
<Value>2</Value>
<Value>3</Value>
<ChildElement >
<ChildElement >
<Value>4</Value>
<Value>5</Value>
<Value>6</Value>
<ChildElement >
</ParentElementX>
<ParentElementX >
<ChildElement >
<Value>1</Value>
<Value>2</Value>
<Value>3</Value>
<ChildElement >
</ParentElementX>
</Root>
Destination:
<Root>
<ParentElementX >
<ChildElement >1/2/3</ChildElement>
<ChildElement >4/56<ChildElement >
</ParentElementX>
<ParentElementX >
<ChildElement >1/2/3<ChildElement >
</ParentElementX>
</Root>
Please tell me what is the xslt code I need to write to
transform this?You can't, because the source you provided is not
well-formed XML. So unless you write your own parser that
would transform this proprietary document into XML DOM that
your XSLT would grok, it's simply impossible.
Even if you write your own parser, I'm not really certain
how did you get to '4/56' as content for the second
ChildElement element in your resulting document.
Now, if you were using well-formed XML, I suppose you could
do something like this:
<xsl:styleshe et version="1.0"
xmlns:xsl="http ://www.w3.org/1999/XSL/Transform">
<xsl:template match="@*|node( )">
<xsl:copy>
<xsl:apply-templates select="@*|node ()"/>
</xsl:copy>
</xsl:template>
<xsl:template
match="Value[not(preceding-sibling::Value)]">
<xsl:apply-templates select="text()"/>
<xsl:apply-templates
select="followi ng-sibling::*[self::Value]"
mode="append"/>
</xsl:template>
<xsl:template match="Value[preceding-sibling::Value]"/>
<xsl:template match="*" mode="append">
<xsl:text>/</xsl:text>
<xsl:apply-templates select="text()"/>
</xsl:template>
</xsl:stylesheet>
(Hint: posting sloppy examples is not a very good idea if
you're asking for help.)
--
Pavel Lepin- Hide quoted text -- Show quoted text -
Jan 26 '07 #5
Hercules Dev. wrote:
I'm using the .NET Framework 1.1 engine for XSLT
transformation so i don't think it support XSLT 2.0, I'm already
planning to convert my work to .NET 2.0 so maybe i can make use of the
new features of XSLT 2.0
Both System.Xml.Xsl. XslTransform in .NET 1.x and
System.Xml.Xsl. XslCompiledTran sform in .NET 2.0 support XSLT 1.0.
If you want to use XSLT 2.0 with .NET then you need Saxon from
<http://www.saxonica.co m/>.

--

Martin Honnen
http://JavaScript.FAQTs.com/
Jan 26 '07 #6
For basic educational material on XML and XSLT, I usually point folks to
the many articles/references at http://www.ibm.com/xml

For specific "how do I" questions about XSLT, always check whether what
you need is available as one of the examples at
http://www.dpawson.co.uk/xsl/sect2/sect21.html

It sounds like you're at a point where both of those resources will be
hugely useful to you.
Jan 26 '07 #7
Hercules Dev. wrote:
Hi all,

I'm new in xslt and xpath, so my question might be simple but i'm
learning.

I have an XML document and need to transform it into another XML, I use
xslt and it works, but there is a case that i don't know how to solve,
I need to concat a string from multiple childs into a standard way, the
following is an example of the source and the target XML.

Source:

<Root>
<ParentElementX >
<ChildElement >
<Value>1</Value>
<Value>2</Value>
<Value>3</Value>
<ChildElement >
<ChildElement >
<Value>4</Value>
<Value>5</Value>
<Value>6</Value>
<ChildElement >

</ParentElementX>
<ParentElementX >
<ChildElement >
<Value>1</Value>
<Value>2</Value>
<Value>3</Value>
<ChildElement >
</ParentElementX>
</Root>
That's not XML. Assuming you just mistyped it and that the ChildElements
do actually have start-tags and end-tags, and that you also missed a
slash in the "4/5/6" output, then there are two ways:

1. Concatenation using a recursive named template:

<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:styleshe et xmlns:xsl="http ://www.w3.org/1999/XSL/Transform"
version="1.0">

<xsl:output method="xml" indent="yes"/>

<xsl:template match="Root">
<Root>
<xsl:apply-templates/>
</Root>
</xsl:template>

<xsl:template match="ParentEl ementX">
<ParentElementX >
<xsl:apply-templates/>
</ParentElementX>
</xsl:template>

<xsl:template match="ChildEle ment">
<ChildElement >
<xsl:call-template name="join-with-slashes">
<xsl:with-param name="children" select="Value"/>
</xsl:call-template>
</ChildElement>
</xsl:template>

<xsl:template name="join-with-slashes">
<xsl:param name="children"/>
<xsl:param name="counter">
<xsl:text>1</xsl:text>
</xsl:param>
<xsl:choose>
<xsl:when test="$counter> =count($childre n)">
<xsl:text>/</xsl:text>
<xsl:value-of select="$childr en[$counter]"/>
</xsl:when>
<xsl:otherwis e>
<xsl:if test="$counter> 1">
<xsl:text>/</xsl:text>
</xsl:if>
<xsl:value-of select="$childr en[$counter]"/>
<xsl:call-template name="join-with-slashes">
<xsl:with-param name="children" select="$childr en"/>
<xsl:with-param name="counter" select="$counte r+1"/>
</xsl:call-template>
</xsl:otherwise>
</xsl:choose>
</xsl:template>

</xsl:stylesheet>

2. Concatenation using normal templates (much faster):

<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:styleshe et xmlns:xsl="http ://www.w3.org/1999/XSL/Transform"
version="1.0">

<xsl:output method="xml" indent="yes"/>
<xsl:strip-space elements="Child Element"/>

<xsl:template match="Root">
<Root>
<xsl:apply-templates/>
</Root>
</xsl:template>

<xsl:template match="ParentEl ementX">
<ParentElementX >
<xsl:apply-templates/>
</ParentElementX>
</xsl:template>

<xsl:template match="ChildEle ment">
<ChildElement >
<xsl:apply-templates/>
</ChildElement>
</xsl:template>

<xsl:template match="Value">
<xsl:value-of select="."/>
<xsl:if test="position( )!=last()">
<xsl:text>/</xsl:text>
</xsl:if>
</xsl:template>

</xsl:stylesheet>

///Peter
--
XML FAQ: http://xml.silmaril.ie
Jan 27 '07 #8
Thank you so much guys,

Yes my source example was bad and I meant to add en end tag for each
ChildElement and I forgot to include the slash to output 4/5/6.

But I read a book about XML, Xpath, Schema and XSLT "Addison Wesley -
Essential Xml Reference - Xpath, Xslt, Soap.pdf" and it's great, I am
able to understand your examples now and it worked with me and solved
my problems, so really thanks for all contributors.

Thanks,
Zaid H. Safadi

On Jan 27, 6:16 pm, Peter Flynn <peter.n...@m.s ilmaril.iewrote :
Hercules Dev. wrote:
Hi all,
I'm new in xslt and xpath, so my question might be simple but i'm
learning.
I have an XML document and need to transform it into another XML, I use
xslt and it works, but there is a case that i don't know how to solve,
I need to concat a string from multiple childs into a standard way, the
following is an example of the source and the target XML.
Source:
<Root>
<ParentElementX >
<ChildElement >
<Value>1</Value>
<Value>2</Value>
<Value>3</Value>
<ChildElement >
<ChildElement >
<Value>4</Value>
<Value>5</Value>
<Value>6</Value>
<ChildElement >
</ParentElementX>
<ParentElementX >
<ChildElement >
<Value>1</Value>
<Value>2</Value>
<Value>3</Value>
<ChildElement >
</ParentElementX>
</Root>That's not XML. Assuming you just mistyped it and that the ChildElements
do actually have start-tags and end-tags, and that you also missed a
slash in the "4/5/6" output, then there are two ways:

1. Concatenation using a recursive named template:

<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:styleshe et xmlns:xsl="http ://www.w3.org/1999/XSL/Transform"
version="1.0">

<xsl:output method="xml" indent="yes"/>

<xsl:template match="Root">
<Root>
<xsl:apply-templates/>
</Root>
</xsl:template>

<xsl:template match="ParentEl ementX">
<ParentElementX >
<xsl:apply-templates/>
</ParentElementX>
</xsl:template>

<xsl:template match="ChildEle ment">
<ChildElement >
<xsl:call-template name="join-with-slashes">
<xsl:with-param name="children" select="Value"/>
</xsl:call-template>
</ChildElement>
</xsl:template>

<xsl:template name="join-with-slashes">
<xsl:param name="children"/>
<xsl:param name="counter">
<xsl:text>1</xsl:text>
</xsl:param>
<xsl:choose>
<xsl:when test="$counter> =count($childre n)">
<xsl:text>/</xsl:text>
<xsl:value-of select="$childr en[$counter]"/>
</xsl:when>
<xsl:otherwis e>
<xsl:if test="$counter> 1">
<xsl:text>/</xsl:text>
</xsl:if>
<xsl:value-of select="$childr en[$counter]"/>
<xsl:call-template name="join-with-slashes">
<xsl:with-param name="children" select="$childr en"/>
<xsl:with-param name="counter" select="$counte r+1"/>
</xsl:call-template>
</xsl:otherwise>
</xsl:choose>
</xsl:template>

</xsl:stylesheet>

2. Concatenation using normal templates (much faster):

<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:styleshe et xmlns:xsl="http ://www.w3.org/1999/XSL/Transform"
version="1.0">

<xsl:output method="xml" indent="yes"/>
<xsl:strip-space elements="Child Element"/>

<xsl:template match="Root">
<Root>
<xsl:apply-templates/>
</Root>
</xsl:template>

<xsl:template match="ParentEl ementX">
<ParentElementX >
<xsl:apply-templates/>
</ParentElementX>
</xsl:template>

<xsl:template match="ChildEle ment">
<ChildElement >
<xsl:apply-templates/>
</ChildElement>
</xsl:template>

<xsl:template match="Value">
<xsl:value-of select="."/>
<xsl:if test="position( )!=last()">
<xsl:text>/</xsl:text>
</xsl:if>
</xsl:template>

</xsl:stylesheet>

///Peter
--
XML FAQ:http://xml.silmaril.ie- Hide quoted text -- Show quoted text -
Jan 28 '07 #9

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

13
18660
by: Martin | last post by:
I have 5 days of experince with XSLT and I am sure my problem is pretty much as basic as they come but I cannot work it out, so I hope someone will take pity on me - please! I have inherited an XML file format which has one header node and several child nodes : <wi workitemid= "99999" .... etc .... /> <widata dataname="AMOUNT" datadisplay="Amount" datavalue="123.45"/> <widata dataname="ADDRESS1" datadisplay="Address" datavalue="Line
1
4017
by: Patrick Reilly | last post by:
I am trying to implement a better method than I already have to document database schemas with XML, and use XSLT to both generate database DDL statements (CREATE TABLE, etc) and to transform to HTML for documentation purposes. In particular I want XSLT to transform to HTML so that my XML documents can be "live", doing the transform in the browser. In the new system a very short XML document looks like: <database> <table id="PROVIDER">
3
7359
by: Son KwonNam | last post by:
The title is quite ambiguos. Any way let me explain. In java, the following is possible. ---- String str = ""; for (int i=0; i < 10; i++) { str = str + i; } ----
4
3246
by: Frederik Sørensen | last post by:
I include a xslt stylesheet with variables for all the error messages in my system. <xsl:variable name="Banner_error_1"> errormessage 1 for banner </xsl:variable> <xsl:variable name="Banner_error_2"> errormessage 2 for banner </xsl:variable>
3
2701
by: shaun roe | last post by:
I have a document about 4 levels deep and in my XSLT I want to generate a unique string ID for each basic element based on its path through the hierarchy. If I use recursion, I am continually accessing the root element ID, here is a typical call: <xsl:variable name="fullPath" select="concat('p',../../../@id,'_c',../../@id,'_r',../@id,'_s',$slaveID) "/>
0
1171
by: david.paik | last post by:
Given the data: <?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="C:\junk\830new.xslt"?> <SC830> <SC830_3 bano="S67777" cuno="002620" year="2007" week="38" item="282-333" qty="10" PO1="PO242" PO2="PO343" PO3="" PO4=""
2
3783
by: Scott Sauyet | last post by:
I'm trying to select a subset of a WSDL document using XSLT and a simple text document describing the high-level elements to include. I have it working fine for selecting the services, bindings, portTypes, and messages to use. But I'm stumped on how to get the xs:simpleType and xs:complexType elements filtered properly. I am not trying to do this in a generic way. The WSDL is generated by a tool in our backend system, and I know a fair...
1
13386
by: n.phelge | last post by:
I'm using XSLT and .NET Framework 1.1 to try to transform XML to group by multiple values, and I'm not succeeding. I have source XML that looks like the following: <Data> <Flavor> <Name>Vanilla</Name> <StartDate>20070704</StartDate> <EndDate>20071231</EndDate> </Flavor>
1
3464
by: CAM123 | last post by:
I have added: <br><xsl:value-of select="Line" /></br> to my XSLT stylesheet to get a line per repeating block. When I view the output as XML it looks perfect - one line per block. However when I output the file to a text file, all the data is wrapping and at the end of each block I am getting the text part of the header included but not all of it. The text that appears is: <br xmlns:msxsl="urn:schemas-microsoft-com:xslt"...
1
5698
by: Sandeep Singh | last post by:
Hi, How to do group by in XSLT ? I tried on the following codes: <files> <file name="swablr.eps" size="4313" project="mars"/> <file name="batboy.wks" size="424" project="neptune"/> <file name="potrzebie.dbf" size="1102" project="jupiter"/>
0
8962
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
8785
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
9463
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
9327
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
6747
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
4559
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
4822
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
3273
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
3
2188
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.