Я пытаюсь записать файл xml путем преобразования кадров данных с использованием некоторого jax-файла, но мне нужно отсортировать. Это не сортировка, если я применяю свою сортировку на уровне данных, потому что в конце я пишу окончательный кадр данных, используя xml jar, и вызываю каждый объект, как можно сортировать по датам здесь?
def generateChannel(ChannelList:Seq[Row]):Seq[Channel]={
var uput:Seq[Uss]=Seq.empty[Uss]
uList.foreach(x => {
var uss: Uss = new Uss()
uss.setAdd1(x.getAs[String]("_Ade1"))
val Channel = new Channel
val Channelrow = x.getAs[Row]("Channelnode")
if (Channelrow !=null){
Channel.setCode(Channelrow.getAs[String]("_TCode"))
Channel.setEfdate(Channelrow.getAs[String]("_Efdate"))
Channel.setExpdate(Channelrow.getAs[String]("_Expdate"))
uss.getChannel.add(Channel)}
uput=uput:+uss
})
uput
}
как можно Я сортирую _Efdate
и _Expdate
? используя dff.sortBy
? или любым другим способом?
, например: Channel.sortBy (x => (x._Efdate, x._Expdate))
как показано ниже?
val sortUdf = udf {(xs: Seq [Row]) => xs.sortBy (_. getAsInt) .map {case Row (x: java. sql .Date, y: Int) => (x, y)}}